lkml.org 
[lkml]   [2003]   [Mar]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: 2.5.63: 'Debug: sleeping function called from illegal context at mm/slab.c:1617'
From
Date
On Sun, 2003-03-02 at 02:26, Alan Cox wrote:
> On Sat, 2003-03-01 at 21:05, Dr. David Alan Gilbert wrote:
> > Hi,
> > 2.5.63 had a good go at trying to boot for me; the only error during
> > boot was 'Debug: sleeping function called from illegal context at
> > mm/slab.c:1617' during the IDE startup.
>
> Known problem. Its a bug in the request_irq code on x86. IDE just
> happens to be a victim of it.

Well... it's a bug in _all_ archs. They (almost) all call the proc
stuff from request_irq, and worse, on x86, I think, has the
kmalloc inside request_irq changed to GFP_ATOMIC.

You really think request_irq should be safe to be called from irq
context ?

I tend to think IDE is at fault here. It doesn't seem to be a
sane requirement to me to have request_irq be called at IRQ
time. It's rather easy to fix it's kmalloc to be GFP_ATOMIC
instead of GFP_KERNEL, but what about /proc stuff ? And the
day we want to fit IRQs in the driver model, that will probably
involve taking a semaphore as well here and do other IRQ tree
management task that are definitely not something we want to
do at IRQ time.

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

\
 
 \ /
  Last update: 2005-03-22 13:33    [W:0.045 / U:0.384 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site