[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <45F5A3E4.4010503@gmail.com>
Date: Tue, 13 Mar 2007 04:03:00 +0900
From: Tejun Heo <htejun@...il.com>
To: Stephen Hemminger <shemminger@...ux-foundation.org>
CC: tglx@...utronix.de,
Michal Piotrowski <michal.k.k.piotrowski@...il.com>,
Jeff Garzik <jeff@...zik.org>, linux-ide@...r.kernel.org,
Ingo Molnar <mingo@...e.hu>,
Bartlomiej Zolnierkiewicz <bzolnier@...il.com>,
netdev@...r.kernel.org, Alan Cox <alan@...rguk.ukuu.org.uk>
Subject: Re: 2.6.21-rc3-git4 ata1.00: qc timeout (cmd 0xef) (crashdump kernel)
Stephen Hemminger wrote:
>> 1. the controller has IRQ stuck high (infrequent but possible)
>> 2. the IRQ is already requested by another device
>> 3. the IRQ gets disabled due to screaming interrupts at the moment
>> ata_piix does pci_enable_device().
>>
>> I think we can be much more resilient to screaming interrupts if we
>> enable device with IRQ disabled and enable it after the device is
>> initialized to some level, possibly when requesting IRQ.
>
> The first thing the skge driver does is do a chip reset, and that should
> cause IRQ to be disabled and cleared. The driver has no chance to
> fix it if the BIOS left the IRQ screaming...
What if we do something like...
pci_intx(pdev, 0);
pci_enable_device(pdev);
/* initialize */
request_irq(blah blah...);
pci_intx(pdev, 1);
Would this work for skge?
--
tejun
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists