Message ID | 20200709145358.1560330-4-vkuznets@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | KVM: nSVM: fixes for CR3/MMU switch upon nested guest entry/exit | expand |
On 09/07/20 16:53, Vitaly Kuznetsov wrote: > 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> > --- > arch/x86/kvm/svm/nested.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/arch/x86/kvm/svm/nested.c b/arch/x86/kvm/svm/nested.c > index e424bce13e6c..1cc8592b1820 100644 > --- a/arch/x86/kvm/svm/nested.c > +++ b/arch/x86/kvm/svm/nested.c > @@ -468,6 +468,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; > I wouldn't complain if you added a kvm-unit-tests testcase for this... Paolo
diff --git a/arch/x86/kvm/svm/nested.c b/arch/x86/kvm/svm/nested.c index e424bce13e6c..1cc8592b1820 100644 --- a/arch/x86/kvm/svm/nested.c +++ b/arch/x86/kvm/svm/nested.c @@ -468,6 +468,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;
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> --- arch/x86/kvm/svm/nested.c | 2 ++ 1 file changed, 2 insertions(+)