I have a couple of Sun sparcstation 2's (sun4c architectire) that reliably
fail in kmem_cache_alloc() whenever their kernel+initrd (net)boot image is
larger than about 2MB.
Each system has 48MB of RAM. Here's some relevant boot output
(printk() isn't actually working at this point, so I've stuck
prom_printf() in a few critical spots):
Memory: 32528k available (972k kernel code, 940k data, 136k init) [f0000000,f2ffe000]
kmem_alloc: Bad slab magic (corrupt) (name=kmem_cache)
The "bad magic" error is being triggered because at this point in
__kmem_cache_alloc(), slabp->s_magic == 0.
Any thoughts on where to go from here? I've traced it this far through
liberal application of prom_printf(), but I don't know anything about the
whole memory allocation system, so I'm not sure where to look next.
Lars Kellogg-Stedman <[email protected]> --> http://www.larsshack.org/