Re: [BUG] kmem_cache_grow.

From: Alan Cox (alan@lxorguk.ukuu.org.uk)
Date: Mon Apr 15 2002 - 04:16:42 EST


> Problem: first run "find /" , eject and insert pcmcia network's card, the kernel will crash.

Which network card and what kernel revision

> Kernel oops: at
> linux/mm/slab.c->kmem_cache_grow.
> if (in_interrupt() && (flags & SLAB_LEVEL_MASK) != SLAB_ATOMIC)
> BUG(); <-- here.
>
> Can I remove this check ?

The kernel realised it was being made to sleep in an interrupt. If you
remove the check it will crash anyway. If you did something like

         if(..... as before ...)
        {
                flags&=~SLAB_LEVEL_MASK;
                flags|=SLAB_ATOMIC;
                printk(KERN_ERR "kmem: critical memory allocation level error.\n");
        }

it ought to print a complaint and continue. Really however it wants fixing
-
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/



This archive was generated by hypermail 2b29 : Mon Apr 15 2002 - 22:00:24 EST