diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/x86/kernel/setup.c | 2 | ||||
-rw-r--r-- | arch/x86/mm/discontig_32.c | 16 | ||||
-rw-r--r-- | arch/x86/mm/init_32.c | 10 |
3 files changed, 4 insertions, 24 deletions
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c index 4ac01d0ce624..d5de157b02ae 100644 --- a/arch/x86/kernel/setup.c +++ b/arch/x86/kernel/setup.c | |||
@@ -749,10 +749,8 @@ void __init setup_arch(char **cmdline_p) | |||
749 | */ | 749 | */ |
750 | acpi_boot_table_init(); | 750 | acpi_boot_table_init(); |
751 | 751 | ||
752 | #ifdef CONFIG_X86_64 | ||
753 | /* Remove active ranges so rediscovery with NUMA-awareness happens */ | 752 | /* Remove active ranges so rediscovery with NUMA-awareness happens */ |
754 | remove_all_active_ranges(); | 753 | remove_all_active_ranges(); |
755 | #endif | ||
756 | 754 | ||
757 | #ifdef CONFIG_ACPI_NUMA | 755 | #ifdef CONFIG_ACPI_NUMA |
758 | /* | 756 | /* |
diff --git a/arch/x86/mm/discontig_32.c b/arch/x86/mm/discontig_32.c index e2f0dd13a451..fa389d20383e 100644 --- a/arch/x86/mm/discontig_32.c +++ b/arch/x86/mm/discontig_32.c | |||
@@ -327,7 +327,6 @@ void __init initmem_init(unsigned long start_pfn, | |||
327 | * and ZONE_HIGHMEM. | 327 | * and ZONE_HIGHMEM. |
328 | */ | 328 | */ |
329 | 329 | ||
330 | remove_all_active_ranges(); | ||
331 | get_memcfg_numa(); | 330 | get_memcfg_numa(); |
332 | 331 | ||
333 | kva_pages = round_up(calculate_numa_remap_pages(), PTRS_PER_PTE); | 332 | kva_pages = round_up(calculate_numa_remap_pages(), PTRS_PER_PTE); |
@@ -390,21 +389,6 @@ void __init initmem_init(unsigned long start_pfn, | |||
390 | setup_bootmem_allocator(); | 389 | setup_bootmem_allocator(); |
391 | } | 390 | } |
392 | 391 | ||
393 | void __init zone_sizes_init(void) | ||
394 | { | ||
395 | unsigned long max_zone_pfns[MAX_NR_ZONES]; | ||
396 | memset(max_zone_pfns, 0, sizeof(max_zone_pfns)); | ||
397 | max_zone_pfns[ZONE_DMA] = | ||
398 | virt_to_phys((char *)MAX_DMA_ADDRESS) >> PAGE_SHIFT; | ||
399 | max_zone_pfns[ZONE_NORMAL] = max_low_pfn; | ||
400 | #ifdef CONFIG_HIGHMEM | ||
401 | max_zone_pfns[ZONE_HIGHMEM] = highend_pfn; | ||
402 | #endif | ||
403 | |||
404 | free_area_init_nodes(max_zone_pfns); | ||
405 | return; | ||
406 | } | ||
407 | |||
408 | void __init set_highmem_pages_init(void) | 392 | void __init set_highmem_pages_init(void) |
409 | { | 393 | { |
410 | #ifdef CONFIG_HIGHMEM | 394 | #ifdef CONFIG_HIGHMEM |
diff --git a/arch/x86/mm/init_32.c b/arch/x86/mm/init_32.c index aa5e37c9f4b4..8efe872b9617 100644 --- a/arch/x86/mm/init_32.c +++ b/arch/x86/mm/init_32.c | |||
@@ -660,12 +660,14 @@ void __init initmem_init(unsigned long start_pfn, | |||
660 | if (max_pfn > max_low_pfn) | 660 | if (max_pfn > max_low_pfn) |
661 | highstart_pfn = max_low_pfn; | 661 | highstart_pfn = max_low_pfn; |
662 | memory_present(0, 0, highend_pfn); | 662 | memory_present(0, 0, highend_pfn); |
663 | e820_register_active_regions(0, 0, highend_pfn); | ||
663 | printk(KERN_NOTICE "%ldMB HIGHMEM available.\n", | 664 | printk(KERN_NOTICE "%ldMB HIGHMEM available.\n", |
664 | pages_to_mb(highend_pfn - highstart_pfn)); | 665 | pages_to_mb(highend_pfn - highstart_pfn)); |
665 | num_physpages = highend_pfn; | 666 | num_physpages = highend_pfn; |
666 | high_memory = (void *) __va(highstart_pfn * PAGE_SIZE - 1) + 1; | 667 | high_memory = (void *) __va(highstart_pfn * PAGE_SIZE - 1) + 1; |
667 | #else | 668 | #else |
668 | memory_present(0, 0, max_low_pfn); | 669 | memory_present(0, 0, max_low_pfn); |
670 | e820_register_active_regions(0, 0, max_low_pfn); | ||
669 | num_physpages = max_low_pfn; | 671 | num_physpages = max_low_pfn; |
670 | high_memory = (void *) __va(max_low_pfn * PAGE_SIZE - 1) + 1; | 672 | high_memory = (void *) __va(max_low_pfn * PAGE_SIZE - 1) + 1; |
671 | #endif | 673 | #endif |
@@ -677,25 +679,21 @@ void __init initmem_init(unsigned long start_pfn, | |||
677 | 679 | ||
678 | setup_bootmem_allocator(); | 680 | setup_bootmem_allocator(); |
679 | } | 681 | } |
682 | #endif /* !CONFIG_NEED_MULTIPLE_NODES */ | ||
680 | 683 | ||
681 | void __init zone_sizes_init(void) | 684 | static void __init zone_sizes_init(void) |
682 | { | 685 | { |
683 | unsigned long max_zone_pfns[MAX_NR_ZONES]; | 686 | unsigned long max_zone_pfns[MAX_NR_ZONES]; |
684 | memset(max_zone_pfns, 0, sizeof(max_zone_pfns)); | 687 | memset(max_zone_pfns, 0, sizeof(max_zone_pfns)); |
685 | max_zone_pfns[ZONE_DMA] = | 688 | max_zone_pfns[ZONE_DMA] = |
686 | virt_to_phys((char *)MAX_DMA_ADDRESS) >> PAGE_SHIFT; | 689 | virt_to_phys((char *)MAX_DMA_ADDRESS) >> PAGE_SHIFT; |
687 | max_zone_pfns[ZONE_NORMAL] = max_low_pfn; | 690 | max_zone_pfns[ZONE_NORMAL] = max_low_pfn; |
688 | remove_all_active_ranges(); | ||
689 | #ifdef CONFIG_HIGHMEM | 691 | #ifdef CONFIG_HIGHMEM |
690 | max_zone_pfns[ZONE_HIGHMEM] = highend_pfn; | 692 | max_zone_pfns[ZONE_HIGHMEM] = highend_pfn; |
691 | e820_register_active_regions(0, 0, highend_pfn); | ||
692 | #else | ||
693 | e820_register_active_regions(0, 0, max_low_pfn); | ||
694 | #endif | 693 | #endif |
695 | 694 | ||
696 | free_area_init_nodes(max_zone_pfns); | 695 | free_area_init_nodes(max_zone_pfns); |
697 | } | 696 | } |
698 | #endif /* !CONFIG_NEED_MULTIPLE_NODES */ | ||
699 | 697 | ||
700 | void __init setup_bootmem_allocator(void) | 698 | void __init setup_bootmem_allocator(void) |
701 | { | 699 | { |