Re: The i386 and x86_64 genirq patches are wrong!

From: Eric W. Biederman
Date: Wed Jun 14 2006 - 13:31:11 EST


Ingo Molnar <mingo@xxxxxxx> writes:

> here too it's hard for me to give an answer without seeing your specific
> changes (against whatever base is most convenient to you). MSI certainly
> works fine on current -mm. (at least on my box)

Ok. Looking closer. I have found a clear functional bug.

When CONFIG_PCI_MSI is not set.
move_irq expands to move_native_irq.

ack_ioapic_vector
move_native_irq
ack_ioapic_irq
move_irq
move_native_irq

ack_ioapic_quirk_vector
move_native_irq
ack_ioapic_quirk_irq
move_irq
move_native_irq

So we wind up calling move_native_irq twice when MSI is disabled where
before your conversion we only ever called it once. Luckily in
the case where we have the double call vector_to_irq is a noop so
we only migration the same irq twice.

Eric
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/