..to reflect the architectural Exit Reason for VM-entry failures due to invalid guest state. Signed-off-by: Krish Sadhukhan <krish.sadhukhan@xxxxxxxxxx> Suggested-by: Sean Christopherson <sean.j.christopherson@xxxxxxxxx> --- arch/x86/kvm/vmx/nested.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/arch/x86/kvm/vmx/nested.c b/arch/x86/kvm/vmx/nested.c index efd226d4ea36..456bf6514bb3 100644 --- a/arch/x86/kvm/vmx/nested.c +++ b/arch/x86/kvm/vmx/nested.c @@ -2705,7 +2705,9 @@ static int nested_vmx_check_vmentry_postreqs(struct kvm_vcpu *vcpu, if (nested_vmx_check_vmcs_link_ptr(vcpu, vmcs12)) { *exit_qual = ENTRY_FAIL_VMCS_LINK_PTR; - return 1; + + return VMX_EXIT_REASONS_FAILED_VMENTRY | + EXIT_REASON_INVALID_STATE; } /* @@ -2724,13 +2726,17 @@ static int nested_vmx_check_vmentry_postreqs(struct kvm_vcpu *vcpu, ia32e != !!(vmcs12->guest_ia32_efer & EFER_LMA) || ((vmcs12->guest_cr0 & X86_CR0_PG) && ia32e != !!(vmcs12->guest_ia32_efer & EFER_LME))) - return 1; + + return VMX_EXIT_REASONS_FAILED_VMENTRY | + EXIT_REASON_INVALID_STATE; } if ((vmcs12->vm_entry_controls & VM_ENTRY_LOAD_BNDCFGS) && (is_noncanonical_address(vmcs12->guest_bndcfgs & PAGE_MASK, vcpu) || (vmcs12->guest_bndcfgs & MSR_IA32_BNDCFGS_RSVD))) - return 1; + + return VMX_EXIT_REASONS_FAILED_VMENTRY | + EXIT_REASON_INVALID_STATE; return 0; } -- 2.17.2