Current KVM directly uses the whole 32-bit EXIT REASON when 1) checking: if (vmx->exit_reason == EXIT_REASON_*) 2) indexing: kvm_vmx_exit_handlers[exit_reason] However, only the low 16-bit of EXIT REASON serves as basic Exit Reason. Fix it by using the 16-bit basic exit reason. BTW, I'm not sure if it's necessary to split nested case into a seperate patch. Xiaoyao Li (2): kvm: vmx: Use basic exit reason to check if it's the specific VM EXIT kvm: nvmx: Use basic(exit_reason) when checking specific EXIT_REASON arch/x86/kvm/vmx/nested.c | 6 +++--- arch/x86/kvm/vmx/nested.h | 2 +- arch/x86/kvm/vmx/vmx.c | 44 ++++++++++++++++++++------------------- arch/x86/kvm/vmx/vmx.h | 2 ++ 4 files changed, 29 insertions(+), 25 deletions(-) -- 2.23.0