[ia64 R&D] Re: [openib-general] disable_irq WARN_ON
Matthew Wilcox
willy at fc.hp.com
Thu Jan 13 09:03:00 PST 2005
On Thu, Jan 13, 2005 at 08:31:55AM -0800, Grant Grundler wrote:
> On Thu, Jan 13, 2005 at 07:57:52AM -0800, Roland Dreier wrote:
> > Andras> However, when I put a card in an rx4640 (four-way thing,
> > Andras> same ZX1 chipset as the 2600 ) I got an oops upon
> > Andras> modprobe. This is 2.6.10-mm2 (I've compared some diffs
> > Andras> with 11-rc1 and nothing relevant seems to have changed).
> ...
> > I'm not sure what's going on. mthca_init_one() is bailing out and
> > disabling the device on the way out, and iosapic_unregister_intr() is
> > warning (not actually an oops, just WARN_ON(1)) because it can't find
> > a valid IRQ number.
>
> I suspect this is a result of mthca_init_one bailing WITHOUT
> having succesfully called request_irq().
I don't think that's possible. Seems to me that free_irq() is only
called for irqs that have been successfully requested. Look at how
mthca_free_irqs() and mthca_init_eq_table() interact with the have_irq
flags.
The iosapic_unregister_intr() function is brand new, so I would expect
that to be buggy, not the driver. I'm not sure who is responsible
for the CONFIG_ACPI_DEALLOCATE_IRQ; someone at Intel, I think.
--
It's always legal to use Linux (TM) systems
http://www.gnu.org/philosophy/why-free.html
More information about the general
mailing list