KVM: x86: Clear "has_error_code", not "error_code", for RM exception injection
authorSean Christopherson <seanjc@google.com>
Wed, 22 Mar 2023 14:32:59 +0000 (07:32 -0700)
committerPaolo Bonzini <pbonzini@redhat.com>
Mon, 27 Mar 2023 14:15:10 +0000 (10:15 -0400)
commit6c41468c7c12d74843bb414fc00307ea8a6318c3
tree2d22a37ea8fd701ea47c91d74fd398b372d80849
parent0dc902267cb32ade1c29eed8208e566ad743518a
KVM: x86: Clear "has_error_code", not "error_code", for RM exception injection

When injecting an exception into a vCPU in Real Mode, suppress the error
code by clearing the flag that tracks whether the error code is valid, not
by clearing the error code itself.  The "typo" was introduced by recent
fix for SVM's funky Paged Real Mode.

Opportunistically hoist the logic above the tracepoint so that the trace
is coherent with respect to what is actually injected (this was also the
behavior prior to the buggy commit).

Fixes: b97f07458373 ("KVM: x86: determine if an exception has an error code only when injecting it.")
Cc: stable@vger.kernel.org
Cc: Maxim Levitsky <mlevitsk@redhat.com>
Signed-off-by: Sean Christopherson <seanjc@google.com>
Message-Id: <20230322143300.2209476-2-seanjc@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/x86.c