KVM: x86: don't notify userspace IOAPIC on edge-triggered interrupt EOI
Commit13db77347d
("KVM: x86: don't notify userspace IOAPIC on edge EOI") said, edge-triggered interrupts don't set a bit in TMR, which means that IOAPIC isn't notified on EOI. And var level indicates level-triggered interrupt. But commit3159d36ad7
("KVM: x86: use generic function for MSI parsing") replace var level with irq.level by mistake. Fix it by changing irq.level to irq.trig_mode. Cc: stable@vger.kernel.org Fixes:3159d36ad7
("KVM: x86: use generic function for MSI parsing") Signed-off-by: Miaohe Lin <linmiaohe@huawei.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
b78a8552d7
commit
7455a83276
|
@ -417,7 +417,7 @@ void kvm_scan_ioapic_routes(struct kvm_vcpu *vcpu,
|
||||||
|
|
||||||
kvm_set_msi_irq(vcpu->kvm, entry, &irq);
|
kvm_set_msi_irq(vcpu->kvm, entry, &irq);
|
||||||
|
|
||||||
if (irq.level &&
|
if (irq.trig_mode &&
|
||||||
kvm_apic_match_dest(vcpu, NULL, APIC_DEST_NOSHORT,
|
kvm_apic_match_dest(vcpu, NULL, APIC_DEST_NOSHORT,
|
||||||
irq.dest_id, irq.dest_mode))
|
irq.dest_id, irq.dest_mode))
|
||||||
__set_bit(irq.vector, ioapic_handled_vectors);
|
__set_bit(irq.vector, ioapic_handled_vectors);
|
||||||
|
|
Loading…
Reference in New Issue