From: Dave Hansen in arch/i386/mm/init.c, there's a #define for __free_all_bootmem(): #ifndef CONFIG_DISCONTIGMEM #define __free_all_bootmem() free_all_bootmem() #else #define __free_all_bootmem() free_all_bootmem_node(NODE_DATA(0)) #endif /* !CONFIG_DISCONTIGMEM */ However, both of those functions end up eventually calling the same thing: free_all_bootmem_core(NODE_DATA(0)) This might have once been a placeholder for a more complex bootmem init call, but that never happened. So, kill off the DISCONTIG version, and just call free_all_bootmem() directly in both cases. Signed-off-by: Dave Hansen Signed-off-by: Andrew Morton --- 25-akpm/arch/i386/mm/init.c | 8 +------- 1 files changed, 1 insertion(+), 7 deletions(-) diff -puN arch/i386/mm/init.c~remove-free_all_bootmem-define arch/i386/mm/init.c --- 25/arch/i386/mm/init.c~remove-free_all_bootmem-define Fri Feb 4 15:01:55 2005 +++ 25-akpm/arch/i386/mm/init.c Fri Feb 4 15:01:55 2005 @@ -560,12 +560,6 @@ static void __init set_max_mapnr_init(vo #endif } -#ifndef CONFIG_DISCONTIGMEM -#define __free_all_bootmem() free_all_bootmem() -#else -#define __free_all_bootmem() free_all_bootmem_node(NODE_DATA(0)) -#endif /* !CONFIG_DISCONTIGMEM */ - static struct kcore_list kcore_mem, kcore_vmalloc; void __init mem_init(void) @@ -601,7 +595,7 @@ void __init mem_init(void) #endif /* this will put all low memory onto the freelists */ - totalram_pages += __free_all_bootmem(); + totalram_pages += free_all_bootmem(); reservedpages = 0; for (tmp = 0; tmp < max_low_pfn; tmp++) _