Re: 'sleeping function called from invalid context' bug when mounting an IDE device

From: Ingo Molnar
Date: Fri Jul 08 2005 - 09:05:16 EST



* Daniel Walker <dwalker@xxxxxxxxxx> wrote:

> > > So, the problem is in the generic IDE code, namely, in ide_intr()
> > > taking ide_lock.
> >
> > which version did you try, and does this happen with the latest patch
> > too?
>
> Interrupts should be enabled unconditionally for threaded interrupt
> handlers. Or at least the generics work that way.

yes, that's why i'm asking about the version and the full backtrace.
Threaded irq handlers run with irqs enabled:

/*
* Unconditionally enable interrupts for threaded
* IRQ handlers:
*/
if (!hardirq_count() || !(action->flags & SA_INTERRUPT))
raw_local_irq_enable();

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