• Jan Kiszka's avatar
    KVM: nVMX: Rework interception of IRQs and NMIs · b6b8a145
    Jan Kiszka authored
    Move the check for leaving L2 on pending and intercepted IRQs or NMIs
    from the *_allowed handler into a dedicated callback. Invoke this
    callback at the relevant points before KVM checks if IRQs/NMIs can be
    injected. The callback has the task to switch from L2 to L1 if needed
    and inject the proper vmexit events.
    
    The rework fixes L2 wakeups from HLT and provides the foundation for
    preemption timer emulation.
    Signed-off-by: default avatarJan Kiszka <jan.kiszka@siemens.com>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    b6b8a145
vmx.c 250 KB