On Sat, 2022-04-02 at 01:09 +0000, Sean Christopherson wrote: > Trace exceptions that are re-injected, not just those that KVM is > injecting for the first time. Debugging re-injection bugs is painful > enough as is, not having visibility into what KVM is doing only makes > things worse. > > Signed-off-by: Sean Christopherson <seanjc@xxxxxxxxxx> > --- > arch/x86/kvm/x86.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c > index 7a066cf92692..384091600bc2 100644 > --- a/arch/x86/kvm/x86.c > +++ b/arch/x86/kvm/x86.c > @@ -9382,6 +9382,10 @@ int kvm_check_nested_events(struct kvm_vcpu *vcpu) > > static void kvm_inject_exception(struct kvm_vcpu *vcpu) > { > + trace_kvm_inj_exception(vcpu->arch.exception.nr, > + vcpu->arch.exception.has_error_code, > + vcpu->arch.exception.error_code); > + Can we use a {new tracepoint / new parameter for this tracepoint} for this to avoid confusion? Best regards, Maxim Levitsky > if (vcpu->arch.exception.error_code && !is_protmode(vcpu)) > vcpu->arch.exception.error_code = false; > static_call(kvm_x86_queue_exception)(vcpu); > @@ -9439,10 +9443,6 @@ static int inject_pending_event(struct kvm_vcpu *vcpu, bool *req_immediate_exit) > > /* try to inject new event if pending */ > if (vcpu->arch.exception.pending) { > - trace_kvm_inj_exception(vcpu->arch.exception.nr, > - vcpu->arch.exception.has_error_code, > - vcpu->arch.exception.error_code); > - > vcpu->arch.exception.pending = false; > vcpu->arch.exception.injected = true; >