Commit-ID: 9d350fe3d38b5c403a9ed99e4708e4a042ab6d8f Gitweb: http://git.kernel.org/tip/9d350fe3d38b5c403a9ed99e4708e4a042ab6d8f Author: Sasha Levin <levinsasha928@xxxxxxxxx> AuthorDate: Thu, 11 Aug 2011 12:04:07 +0300 Committer: Pekka Enberg <penberg@xxxxxxxxxx> CommitDate: Thu, 11 Aug 2011 18:07:58 +0300 kvm tools: Fix IRQ mapping This thread fixes two issues: - Slave IRQCHIP was mapped wrong, this caused all IRQs which belong to it to be ignored (breaking such things as the mouse). - Line 2 was being mapped, since it's the link between slave and master IRQCHIPs it shouldn't be. Signed-off-by: Sasha Levin <levinsasha928@xxxxxxxxx> Signed-off-by: Pekka Enberg <penberg@xxxxxxxxxx> --- tools/kvm/irq.c | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-) diff --git a/tools/kvm/irq.c b/tools/kvm/irq.c index 85e2238..e35bf18 100644 --- a/tools/kvm/irq.c +++ b/tools/kvm/irq.c @@ -147,17 +147,18 @@ void irq__init(struct kvm *kvm) /* Hook first 8 GSIs to master IRQCHIP */ for (i = 0; i < 8; i++) - irq__add_routing(i, KVM_IRQ_ROUTING_IRQCHIP, IRQCHIP_MASTER, i); + if (i != 2) + irq__add_routing(i, KVM_IRQ_ROUTING_IRQCHIP, IRQCHIP_MASTER, i); /* Hook next 8 GSIs to slave IRQCHIP */ for (i = 8; i < 16; i++) - irq__add_routing(i, KVM_IRQ_ROUTING_IRQCHIP, IRQCHIP_SLAVE, 8-i); + irq__add_routing(i, KVM_IRQ_ROUTING_IRQCHIP, IRQCHIP_SLAVE, i - 8); /* Last but not least, IOAPIC */ for (i = 0; i < 24; i++) { if (i == 0) irq__add_routing(i, KVM_IRQ_ROUTING_IRQCHIP, IRQCHIP_IOAPIC, 2); - else + else if (i != 2) irq__add_routing(i, KVM_IRQ_ROUTING_IRQCHIP, IRQCHIP_IOAPIC, i); } -- To unsubscribe from this list: send the line "unsubscribe linux-tip-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html