Messages in this thread | | | Subject | Re: [PATCH] KVM: x86: fix uninitialized variable use on KVM_REQ_TRIPLE_FAULT | From | Maxim Levitsky <> | Date | Wed, 30 Nov 2022 19:35:18 +0200 |
| |
On Wed, 2022-11-30 at 11:15 -0500, Paolo Bonzini wrote: > If a triple fault was fixed by kvm_x86_ops.nested_ops->triple_fault (by > turning it into a vmexit), there is no need to leave vcpu_enter_guest(). > Any vcpu->requests will be caught later before the actual vmentry, > and in fact vcpu_enter_guest() was not initializing the "r" variable. > Depending on the compiler's whims, this could cause the > x86_64/triple_fault_event_test test to fail. > > Cc: Maxim Levitsky <mlevitsk@redhat.com> > Fixes: 92e7d5c83aff ("KVM: x86: allow L1 to not intercept triple fault") > Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> > --- > arch/x86/kvm/x86.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c > index 246bdc9a9154..7f850dfb4086 100644 > --- a/arch/x86/kvm/x86.c > +++ b/arch/x86/kvm/x86.c > @@ -10280,8 +10280,8 @@ static int vcpu_enter_guest(struct kvm_vcpu *vcpu) > vcpu->run->exit_reason = KVM_EXIT_SHUTDOWN; > vcpu->mmio_needed = 0; > r = 0; > + goto out; > } > - goto out; > } > if (kvm_check_request(KVM_REQ_APF_HALT, vcpu)) { > /* Page is swapped out. Do synthetic halt */
I had the same patch waiting to be sent, so:
Reviewed-by: Maxim Levitsky <mlevitsk@redhat.com>
But we need to add the orignal reporter of this bug as well:
Reported-by: Dan Carpenter <error27@gmail.com>
Best regards, Maxim Levitsky
| |