mbox series

[0/5] KVM: nVMX: Honor event priority for PI ack at VM-Enter

Message ID 20241101191447.1807602-1-seanjc@google.com (mailing list archive)
Headers show
Series KVM: nVMX: Honor event priority for PI ack at VM-Enter | expand

Message

Sean Christopherson Nov. 1, 2024, 7:14 p.m. UTC
Rework and cleanup KVM's event handling during nested VM-Enter emulation,
and ultimately fix a bug where KVM doesn't honor event priority when
delivering a nested posted interrupt.  Specifically, if there is a posted
interrupt *notification* IRQ in L1's vIRR, the IRQ should not be acked by
the CPU if a higher priority event is recognized after VM-Enter (which
unblocks L1 IRQs).

FWIW, I don't exactly love the resulting code in vmx_check_nested_events(),
so if someone has a better idea...

Sean Christopherson (5):
  KVM: nVMX: Explicitly update vPPR on successful nested VM-Enter
  KVM: nVMX: Check for pending INIT/SIPI after entering non-root mode
  KVM: nVMX: Drop manual vmcs01.GUEST_INTERRUPT_STATUS.RVI check at
    VM-Enter
  KVM: nVMX: Use vmcs01's controls shadow to check for IRQ/NMI windows
    at VM-Enter
  KVM: nVMX: Honor event priority when emulating PI delivery during
    VM-Enter

 arch/x86/kvm/vmx/nested.c | 77 ++++++++++++++++++++++-----------------
 1 file changed, 44 insertions(+), 33 deletions(-)


base-commit: e466901b947d529f7b091a3b00b19d2bdee206ee