]> git.baikalelectronics.ru Git - kernel.git/commit
KVM: ioapic: fix lost interrupt when changing a device's irq
authorAvi Kivity <avi@qumranet.com>
Tue, 17 Jun 2008 22:36:36 +0000 (15:36 -0700)
committerAvi Kivity <avi@qumranet.com>
Tue, 24 Jun 2008 09:23:55 +0000 (12:23 +0300)
commitc64070609a98c270b5c07801c6c0a92767132192
tree3542acc44ec41a0c9f79fbda570f64d315bdb0b1
parente5fc7aad223bcc0a176d6f14b21a60fbe1645816
KVM: ioapic: fix lost interrupt when changing a device's irq

The ioapic acknowledge path translates interrupt vectors to irqs.  It
currently uses a first match algorithm, stopping when it finds the first
redirection table entry containing the vector.  That fails however if the
guest changes the irq to a different line, leaving the old redirection table
entry in place (though masked).  Result is interrupts not making it to the
guest.

Fix by always scanning the entire redirection table.

Signed-off-by: Avi Kivity <avi@qumranet.com>
virt/kvm/ioapic.c