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 -- 2.47.0.163.g1226f6d8fa-goog