nomemblock is currently used only by x86 and on x86_32free_all_memory_core_early() silently freed only the low mem becauseget_free_all_memory_range() in arch/x86/mm/memblock.c implicitlylimited range to max_low_pfn.

Rename free_all_memory_core_early() to free_low_memory_core_early()and make it call __get_free_all_memory_range() and limit the range tomax_low_pfn explicitly. This makes things clearer and also isconsistent with the bootmem behavior.

- /* free_all_memory_core_early(MAX_NUMNODES) will be called later */+ /* free_low_memory_core_early(MAX_NUMNODES) will be called later */ return 0; }

@@ -154,7 +154,7 @@ unsigned long __init free_all_bootmem(void) * Use MAX_NUMNODES will make sure all ranges in early_node_map[] * will be used instead of only Node0 related */- return free_all_memory_core_early(MAX_NUMNODES);+ return free_low_memory_core_early(MAX_NUMNODES); }