Messages in this thread | | | Date | Wed, 14 Mar 2007 13:04:22 -0400 (EDT) | From | Alan Stern <> | Subject | Re: [linux-pm] [PATCH/RFC] PCI prepare/activate instead of enable to avoid IRQ storm and rogue DMA access |
| |
On Thu, 15 Mar 2007, Tejun Heo wrote:
> Hello, all. > > This patch started off from the following thread. > > http://thread.gmane.org/gmane.linux.ide/16899 > > The problem is that a PCI device can be in any arbitrary when it gets > enabled and the device has to be enabled for its driver to > initialize/reset it. The most common case this causes headache is as > follows. > > Let's assume there's a device which shares its INTX IRQ line with > another device and the other one is already initialized. During boot, > due to BIOS's fault, bad hardware design or sheer bad luck, the device > has got a pending IRQ. When its driver enables the device, the > pending IRQ hits INTX. The IRQ line has been enabled by the other > driver sharing the IRQ but IRQ handler for this device hasn't been > registered yet. So, screaming interrupts. IRQ subsystem shuts up the > IRQ line in an attempt to save the machine from complete lockup and > both devices end up dead.
In several cases this problem has indeed come up and been fixed by adding a PCI quirk routine to turn off the device's pending IRQ.
Alan Stern
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |