Re: MSI interrupts and disable_irq

From: Manfred Spraul
Date: Wed Oct 17 2007 - 15:44:32 EST


Yinghai Lu wrote:

Correct, but the overall point was that MSI-X conceptually conflicts
with the existing "lockless" disable_irq() schedule, which was written
when there was a one-one relationship between irq, PCI device, and work
to be done.

at this point, nic in mcp55 is using msi or INTx.

Correct.
For msi-x, the driver does three disable_irq() calls to the correct vectors. ugly, but nevertheless correct.
The bug only affected msi: The driver did disable_irq(<old INTx irq num>) instead of disable_irq(<new msi-x irq num>).
The patch that I've attached to the bugzilla report 9047 seems to fix the crash, thus I would propose to apply it to 2.6.23 and 2.6.24. I'll send a seperate mail.

All other problem [reduce code duplication, less ugly locking, ...] should be fixed with independant patches.

--
Manfred


YH

-
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/