Commit 9fb2d2b4ff292a01ae30da003d1dc097917b0988
Committed by
Avi Kivity
1 parent
f78978aa3a
Exists in
master
and in
4 other branches
KVM: SVM: correctly trace irq injection
On SVM interrupts are injected by svm_set_irq() not svm_inject_irq(). The later is used only to wait for irq window. Signed-off-by: Gleb Natapov <gleb@redhat.com> Signed-off-by: Avi Kivity <avi@redhat.com>
Showing 1 changed file with 3 additions and 3 deletions Side-by-side Diff
arch/x86/kvm/svm.c
... | ... | @@ -2917,9 +2917,6 @@ |
2917 | 2917 | { |
2918 | 2918 | struct vmcb_control_area *control; |
2919 | 2919 | |
2920 | - trace_kvm_inj_virq(irq); | |
2921 | - | |
2922 | - ++svm->vcpu.stat.irq_injections; | |
2923 | 2920 | control = &svm->vmcb->control; |
2924 | 2921 | control->int_vector = irq; |
2925 | 2922 | control->int_ctl &= ~V_INTR_PRIO_MASK; |
... | ... | @@ -2932,6 +2929,9 @@ |
2932 | 2929 | struct vcpu_svm *svm = to_svm(vcpu); |
2933 | 2930 | |
2934 | 2931 | BUG_ON(!(gif_set(svm))); |
2932 | + | |
2933 | + trace_kvm_inj_virq(vcpu->arch.interrupt.nr); | |
2934 | + ++vcpu->stat.irq_injections; | |
2935 | 2935 | |
2936 | 2936 | svm->vmcb->control.event_inj = vcpu->arch.interrupt.nr | |
2937 | 2937 | SVM_EVTINJ_VALID | SVM_EVTINJ_TYPE_INTR; |