Hi! This is the vNMI patch series based on Santosh Shukla's vNMI patch series. In this version of this patch series I addressed most of the review feedback added some more refactoring and also I think fixed the issue with migration. I only tested this on a machine which doesn't have vNMI, so this does need some testing to ensure that nothing is broken. Best regards, Maxim Levitsky Maxim Levitsky (9): KVM: nSVM: don't sync back tlb_ctl on nested VM exit KVM: nSVM: clean up the copying of V_INTR bits from vmcb02 to vmcb12 KVM: nSVM: explicitly raise KVM_REQ_EVENT on nested VM exit if L1 doesn't intercept interrupts KVM: SVM: drop the SVM specific H_FLAGS KVM: x86: emulator: stop using raw host flags KVM: SVM: add wrappers to enable/disable IRET interception KVM: x86: add a delayed hardware NMI injection interface KVM: SVM: implement support for vNMI KVM: nSVM: implement support for nested VNMI Santosh Shukla (2): x86/cpu: Add CPUID feature bit for VNMI KVM: SVM: Add VNMI bit definition arch/x86/include/asm/cpufeatures.h | 1 + arch/x86/include/asm/kvm-x86-ops.h | 2 + arch/x86/include/asm/kvm_host.h | 24 +++-- arch/x86/include/asm/svm.h | 7 ++ arch/x86/kvm/emulate.c | 11 +-- arch/x86/kvm/kvm_emulate.h | 7 +- arch/x86/kvm/smm.c | 2 - arch/x86/kvm/svm/nested.c | 102 ++++++++++++++++--- arch/x86/kvm/svm/svm.c | 154 ++++++++++++++++++++++------- arch/x86/kvm/svm/svm.h | 41 +++++++- arch/x86/kvm/x86.c | 50 ++++++++-- 11 files changed, 318 insertions(+), 83 deletions(-) -- 2.26.3