Loading arch/x86/kvm/svm.c +1 −0 Original line number Original line Diff line number Diff line Loading @@ -1519,6 +1519,7 @@ static inline void svm_inject_irq(struct vcpu_svm *svm, int irq) KVMTRACE_1D(INJ_VIRQ, &svm->vcpu, (u32)irq, handler); KVMTRACE_1D(INJ_VIRQ, &svm->vcpu, (u32)irq, handler); ++svm->vcpu.stat.irq_injections; control = &svm->vmcb->control; control = &svm->vmcb->control; control->int_vector = irq; control->int_vector = irq; control->int_ctl &= ~V_INTR_PRIO_MASK; control->int_ctl &= ~V_INTR_PRIO_MASK; Loading arch/x86/kvm/vmx.c +1 −0 Original line number Original line Diff line number Diff line Loading @@ -2341,6 +2341,7 @@ static void vmx_inject_irq(struct kvm_vcpu *vcpu, int irq) KVMTRACE_1D(INJ_VIRQ, vcpu, (u32)irq, handler); KVMTRACE_1D(INJ_VIRQ, vcpu, (u32)irq, handler); ++vcpu->stat.irq_injections; if (vcpu->arch.rmode.active) { if (vcpu->arch.rmode.active) { vmx->rmode.irq.pending = true; vmx->rmode.irq.pending = true; vmx->rmode.irq.vector = irq; vmx->rmode.irq.vector = irq; Loading arch/x86/kvm/x86.c +1 −0 Original line number Original line Diff line number Diff line Loading @@ -92,6 +92,7 @@ struct kvm_stats_debugfs_item debugfs_entries[] = { { "fpu_reload", VCPU_STAT(fpu_reload) }, { "fpu_reload", VCPU_STAT(fpu_reload) }, { "insn_emulation", VCPU_STAT(insn_emulation) }, { "insn_emulation", VCPU_STAT(insn_emulation) }, { "insn_emulation_fail", VCPU_STAT(insn_emulation_fail) }, { "insn_emulation_fail", VCPU_STAT(insn_emulation_fail) }, { "irq_injections", VCPU_STAT(irq_injections) }, { "mmu_shadow_zapped", VM_STAT(mmu_shadow_zapped) }, { "mmu_shadow_zapped", VM_STAT(mmu_shadow_zapped) }, { "mmu_pte_write", VM_STAT(mmu_pte_write) }, { "mmu_pte_write", VM_STAT(mmu_pte_write) }, { "mmu_pte_updated", VM_STAT(mmu_pte_updated) }, { "mmu_pte_updated", VM_STAT(mmu_pte_updated) }, Loading include/asm-x86/kvm_host.h +1 −0 Original line number Original line Diff line number Diff line Loading @@ -413,6 +413,7 @@ struct kvm_vcpu_stat { u32 insn_emulation; u32 insn_emulation; u32 insn_emulation_fail; u32 insn_emulation_fail; u32 hypercalls; u32 hypercalls; u32 irq_injections; }; }; struct descriptor_table { struct descriptor_table { Loading Loading
arch/x86/kvm/svm.c +1 −0 Original line number Original line Diff line number Diff line Loading @@ -1519,6 +1519,7 @@ static inline void svm_inject_irq(struct vcpu_svm *svm, int irq) KVMTRACE_1D(INJ_VIRQ, &svm->vcpu, (u32)irq, handler); KVMTRACE_1D(INJ_VIRQ, &svm->vcpu, (u32)irq, handler); ++svm->vcpu.stat.irq_injections; control = &svm->vmcb->control; control = &svm->vmcb->control; control->int_vector = irq; control->int_vector = irq; control->int_ctl &= ~V_INTR_PRIO_MASK; control->int_ctl &= ~V_INTR_PRIO_MASK; Loading
arch/x86/kvm/vmx.c +1 −0 Original line number Original line Diff line number Diff line Loading @@ -2341,6 +2341,7 @@ static void vmx_inject_irq(struct kvm_vcpu *vcpu, int irq) KVMTRACE_1D(INJ_VIRQ, vcpu, (u32)irq, handler); KVMTRACE_1D(INJ_VIRQ, vcpu, (u32)irq, handler); ++vcpu->stat.irq_injections; if (vcpu->arch.rmode.active) { if (vcpu->arch.rmode.active) { vmx->rmode.irq.pending = true; vmx->rmode.irq.pending = true; vmx->rmode.irq.vector = irq; vmx->rmode.irq.vector = irq; Loading
arch/x86/kvm/x86.c +1 −0 Original line number Original line Diff line number Diff line Loading @@ -92,6 +92,7 @@ struct kvm_stats_debugfs_item debugfs_entries[] = { { "fpu_reload", VCPU_STAT(fpu_reload) }, { "fpu_reload", VCPU_STAT(fpu_reload) }, { "insn_emulation", VCPU_STAT(insn_emulation) }, { "insn_emulation", VCPU_STAT(insn_emulation) }, { "insn_emulation_fail", VCPU_STAT(insn_emulation_fail) }, { "insn_emulation_fail", VCPU_STAT(insn_emulation_fail) }, { "irq_injections", VCPU_STAT(irq_injections) }, { "mmu_shadow_zapped", VM_STAT(mmu_shadow_zapped) }, { "mmu_shadow_zapped", VM_STAT(mmu_shadow_zapped) }, { "mmu_pte_write", VM_STAT(mmu_pte_write) }, { "mmu_pte_write", VM_STAT(mmu_pte_write) }, { "mmu_pte_updated", VM_STAT(mmu_pte_updated) }, { "mmu_pte_updated", VM_STAT(mmu_pte_updated) }, Loading
include/asm-x86/kvm_host.h +1 −0 Original line number Original line Diff line number Diff line Loading @@ -413,6 +413,7 @@ struct kvm_vcpu_stat { u32 insn_emulation; u32 insn_emulation; u32 insn_emulation_fail; u32 insn_emulation_fail; u32 hypercalls; u32 hypercalls; u32 irq_injections; }; }; struct descriptor_table { struct descriptor_table { Loading