you asked me to run with the debug patch attached below. I just tried vanilla -rc9 (head 120dd64cacd4fb7) and it still crashes with this config: http://redhat.com/~mingo/misc/config-Thu_Apr_10_10_41_16_CEST_2008.bad.rc9 debug output is: http://redhat.com/~mingo/misc/log-Thu_Apr_10_10_41_16_CEST_2008.bad.rc9 so it's probably the first few page allocations (setup_cpu_cache()) going wrong already - suggesting a some fundamental borkage in SLAB? note, when i change SLAB to SLUB (and keep the config unchanged otherwise), i get a similar early crash: http://redhat.com/~mingo/misc/log-Tue_Apr_15_07_24_59_CEST_2008.bad http://redhat.com/~mingo/misc/config-Tue_Apr_15_07_24_59_CEST_2008.bad i've also uploaded a bzImage (SLUB, debug patch not applied) that you can pick up and run on any 32-bit test-system: http://redhat.com/~mingo/misc/bzImage-Thu_Apr_10_10_41_16_CEST_2008.bad.rc9 it's a relatively generic bzImage that should boot on most whitebox PCs on most distros as long as you use a pure ext3 setup and might even give you networking (no modules or initrd is needed). It boots fine on two other 32-bit PCs i have (an Intel laptop and an AMD desktop). Ingo Index: linux/mm/page_alloc.c =================================================================== --- linux.orig/mm/page_alloc.c +++ linux/mm/page_alloc.c @@ -1485,6 +1485,7 @@ restart: * Happens if we have an empty zonelist as a result of * GFP_THISNODE being used on a memoryless node */ + WARN_ON(1); return NULL; } Index: linux/mm/slab.c =================================================================== --- linux.orig/mm/slab.c +++ linux/mm/slab.c @@ -1682,6 +1682,7 @@ static void *kmem_getpages(struct kmem_c flags |= __GFP_RECLAIMABLE; page = alloc_pages_node(nodeid, flags, cachep->gfporder); + WARN_ON(!page); if (!page) return NULL; @@ -2620,6 +2621,7 @@ static struct slab *alloc_slabmgmt(struc /* Slab management obj is off-slab. */ slabp = kmem_cache_alloc_node(cachep->slabp_cache, local_flags & ~GFP_THISNODE, nodeid); + WARN_ON(!slabp); if (!slabp) return NULL; } else { --
| Alan Cox | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
| Greg Kroah-Hartman | [PATCH 007/196] Chinese: add translation of stable_kernel_rules.txt |
| Eric W. Biederman | Re: [net-2.6.24][patch 2/2] Dynamically allocate the loopback device |
| Rafael J. Wysocki | Re: -mm merge plans for 2.6.23 |
git: | |
| Gerrit Renker | [PATCH 15/37] dccp: Set per-connection CCIDs via socket options |
| David Miller | [GIT]: Networking |
| David Miller | Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
