summaryrefslogtreecommitdiffstats
path: root/virt/kvm
diff options
context:
space:
mode:
authorGleb Natapov <gleb@redhat.com>2009-09-03 11:10:34 +0200
committerAvi Kivity <avi@redhat.com>2009-09-10 09:46:59 +0200
commit65a82211636f156a276cac3f8665605ae18f371f (patch)
treee3747c159a8c86bcd92dde36dd58b59c942ed9ff /virt/kvm
parentKVM guest: fix bogus wallclock physical address calculation (diff)
downloadlinux-65a82211636f156a276cac3f8665605ae18f371f.tar.xz
linux-65a82211636f156a276cac3f8665605ae18f371f.zip
KVM: Fix coalesced interrupt reporting in IOAPIC
This bug was introduced by b4a2f5e723e4f7df467. Cc: stable@kernel.org Signed-off-by: Gleb Natapov <gleb@redhat.com> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com> Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'virt/kvm')
-rw-r--r--virt/kvm/ioapic.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/virt/kvm/ioapic.c b/virt/kvm/ioapic.c
index fa05f67423ab..9fe140bb38ec 100644
--- a/virt/kvm/ioapic.c
+++ b/virt/kvm/ioapic.c
@@ -193,6 +193,8 @@ int kvm_ioapic_set_irq(struct kvm_ioapic *ioapic, int irq, int level)
if ((edge && old_irr != ioapic->irr) ||
(!edge && !entry.fields.remote_irr))
ret = ioapic_service(ioapic, irq);
+ else
+ ret = 0; /* report coalesced interrupt */
}
trace_kvm_ioapic_set_irq(entry.bits, irq, ret == 0);
}