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@xxxxxxxxxx> > Fixes: 92e7d5c83aff ("KVM: x86: allow L1 to not intercept triple fault") > Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx> > --- > 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@xxxxxxxxxx> But we need to add the orignal reporter of this bug as well: Reported-by: Dan Carpenter <error27@xxxxxxxxx> Best regards, Maxim Levitsky