Event injection in nSVM does not use check_nested_events, which means it is basically broken. As a first step, this fixes interrupt injection which is probably the most complicated case due to the interactions with V_INTR_MASKING and the host EFLAGS.IF. This series fixes Cathy's test case that I have sent earlier. Paolo Paolo Bonzini (4): KVM: nSVM: do not change host intercepts while nested VM is running KVM: nSVM: ignore L1 interrupt window while running L2 with V_INTR_MASKING=1 KVM: nSVM: implement check_nested_events for interrupts KVM: nSVM: avoid loss of pending IRQ/NMI before entering L2 arch/x86/kvm/svm.c | 172 ++++++++++++++++++++++++++++++++--------------------- 1 file changed, 103 insertions(+), 69 deletions(-) -- 1.8.3.1