On 8/11/11 12:04 PM, Sasha Levin wrote:
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>
Asias, does this fix the VNC mouse problem for you?
--- 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 kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html