ChangeSet 1.2132, 2004/11/13 20:59:55-08:00, Andries.Brouwer@xxxxxxI think the patch is wrong and should be reverted: initarray_generic is referenced, but never used:
[PATCH] __init in mm/slab.c
The below removes an __initdata
(for initarray_generic that is referenced in non-init code).
if (g_cpucache_up == NONE) {
/* Note: the first kmem_cache_create must create
* the cache that's used by kmalloc(24), otherwise
* the creation of further caches will BUG().
*/
cachep->array[smp_processor_id()] = &initarray_generic.cache;
g_cpucache_up = PARTIAL;
} else {
cachep->array[smp_processor_id()] = kmalloc(sizeof(struct arraycache_init),GFP_KERNEL);
}