KVM: nSVM: reset nested_run_pending upon nested_svm_vmrun_msrpm() failure
authorVitaly Kuznetsov <vkuznets@redhat.com>
Fri, 10 Jul 2020 14:11:51 +0000 (16:11 +0200)
committerPaolo Bonzini <pbonzini@redhat.com>
Fri, 10 Jul 2020 16:54:25 +0000 (12:54 -0400)
WARN_ON_ONCE(svm->nested.nested_run_pending) in nested_svm_vmexit()
will fire if nested_run_pending remains '1' but it doesn't really
need to, we are already failing and not going to run nested guest.

Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Message-Id: <20200710141157.1640173-4-vkuznets@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/svm/nested.c

index 19e1e99..bd0df1b 100644 (file)
@@ -493,6 +493,8 @@ int nested_svm_vmrun(struct vcpu_svm *svm)
        enter_svm_guest_mode(svm, vmcb_gpa, nested_vmcb);
 
        if (!nested_svm_vmrun_msrpm(svm)) {
+               svm->nested.nested_run_pending = 0;
+
                svm->vmcb->control.exit_code    = SVM_EXIT_ERR;
                svm->vmcb->control.exit_code_hi = 0;
                svm->vmcb->control.exit_info_1  = 0;