aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/x86_64/mm/numa.c17
1 files changed, 2 insertions, 15 deletions
diff --git a/arch/x86_64/mm/numa.c b/arch/x86_64/mm/numa.c
index d3f747dd61d3..41b8fb069924 100644
--- a/arch/x86_64/mm/numa.c
+++ b/arch/x86_64/mm/numa.c
@@ -460,20 +460,6 @@ unsigned long __init numa_free_all_bootmem(void)
460 return pages; 460 return pages;
461} 461}
462 462
463#ifdef CONFIG_SPARSEMEM
464static void __init arch_sparse_init(void)
465{
466 int i;
467
468 for_each_online_node(i)
469 memory_present(i, node_start_pfn(i), node_end_pfn(i));
470
471 sparse_init();
472}
473#else
474#define arch_sparse_init() do {} while (0)
475#endif
476
477void __init paging_init(void) 463void __init paging_init(void)
478{ 464{
479 int i; 465 int i;
@@ -483,7 +469,8 @@ void __init paging_init(void)
483 max_zone_pfns[ZONE_DMA32] = MAX_DMA32_PFN; 469 max_zone_pfns[ZONE_DMA32] = MAX_DMA32_PFN;
484 max_zone_pfns[ZONE_NORMAL] = end_pfn; 470 max_zone_pfns[ZONE_NORMAL] = end_pfn;
485 471
486 arch_sparse_init(); 472 sparse_memory_present_with_active_regions(MAX_NUMNODES);
473 sparse_init();
487 474
488 for_each_online_node(i) { 475 for_each_online_node(i) {
489 setup_node_zones(i); 476 setup_node_zones(i);