Hello,

I have got the problem running the newest uClinux (20080808, 2.6.25 kernel).

Kernel BUG happens at the kmem_cache_create function (mm/slab.c) with
default kernel config. The first sanity checks of this function fails,
because in_interrupt () returns true. Actually preempt_count () at
that place is equal to 0x1000, which means that hardirq count is 1.

It is not the first call of kmem_cahce_create (), and usually happens
in few calls after call of this function by the kmem_cache_init ().
Changing of the Kbuild config (Processor Type and Features --->
Preemption Model) from "No Forced Preemption" to the "Preemptible
Kernel" lets the BUG happen a bit later in the call of the
kmem_cache_create ().
Problem seems to happen after the kmalloc () call in the
setup_cpu_cache () function which is called from kmem_cache_create().

In old version of uClinux (2.6.19) no problem happens. On ColdFire
5329 (which is also m68knommu arch) everything works ok on the 2.6.25.

The same problem was previously posted at this mailing list:
http://mailman.uclinux.org/pipermail/uclinux-dev/2008-October/047240.html,
but I have not found any replies with solutions.

Can somebody help with some ideas what was seriously changed from 19th
kernel to 25th kernel?

Yours sincerely

Oleksii Kuchuk
_______________________________________________
uClinux-dev mailing list
[email protected]
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by [email protected]
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

Reply via email to