From: Yinghai Lu allocate section_map in bootmem instead of using __initdata. Signed-off-by: Yinghai Lu Cc: Andi Kleen Cc: Yasunori Goto Cc: KAMEZAWA Hiroyuki Cc: Ingo Molnar Cc: Christoph Lameter Cc: Mel Gorman Signed-off-by: Andrew Morton --- mm/sparse.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff -puN mm/sparse.c~mm-allocate-section_map-for-sparse_init-update mm/sparse.c --- a/mm/sparse.c~mm-allocate-section_map-for-sparse_init-update +++ a/mm/sparse.c @@ -335,8 +335,7 @@ void __init sparse_init(void) usemap); } - for_each_online_node(node) - free_bootmem_node(NODE_DATA(node), __pa(section_map), size); + free_bootmem(__pa(section_map), size); } #ifdef CONFIG_MEMORY_HOTPLUG _