diff options
author | Nathan Lynch <nathanl@austin.ibm.com> | 2006-03-20 19:37:15 -0500 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2006-03-21 23:04:03 -0500 |
commit | 2b2612272c77288b2bd53d5831df737cd669cd93 (patch) | |
tree | 551588d4f4709c39e5e0176b81ed5138722e3458 /arch/powerpc/mm | |
parent | 482ec7c403d239bb4f1732faf9a14988094ce08b (diff) |
[PATCH] powerpc numa: Consolidate assignment of cpus to nodes
We can plug the boot cpu into its node independently of whether numa
topology is detected. And numa_setup_cpu does the right thing for all
cases now, so remove special-casing for non-numa from the cpu hotplug
callback.
Signed-off-by: Nathan Lynch <nathanl@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/mm')
-rw-r--r-- | arch/powerpc/mm/numa.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/arch/powerpc/mm/numa.c b/arch/powerpc/mm/numa.c index 7d6ebe3c3b9b..e89b22aa539e 100644 --- a/arch/powerpc/mm/numa.c +++ b/arch/powerpc/mm/numa.c | |||
@@ -321,10 +321,7 @@ static int cpu_numa_callback(struct notifier_block *nfb, | |||
321 | 321 | ||
322 | switch (action) { | 322 | switch (action) { |
323 | case CPU_UP_PREPARE: | 323 | case CPU_UP_PREPARE: |
324 | if (min_common_depth == -1 || !numa_enabled) | 324 | numa_setup_cpu(lcpu); |
325 | map_cpu_to_node(lcpu, 0); | ||
326 | else | ||
327 | numa_setup_cpu(lcpu); | ||
328 | ret = NOTIFY_OK; | 325 | ret = NOTIFY_OK; |
329 | break; | 326 | break; |
330 | #ifdef CONFIG_HOTPLUG_CPU | 327 | #ifdef CONFIG_HOTPLUG_CPU |
@@ -459,8 +456,6 @@ new_range: | |||
459 | goto new_range; | 456 | goto new_range; |
460 | } | 457 | } |
461 | 458 | ||
462 | numa_setup_cpu(boot_cpuid); | ||
463 | |||
464 | return 0; | 459 | return 0; |
465 | } | 460 | } |
466 | 461 | ||
@@ -475,7 +470,6 @@ static void __init setup_nonnuma(void) | |||
475 | printk(KERN_INFO "Memory hole size: %ldMB\n", | 470 | printk(KERN_INFO "Memory hole size: %ldMB\n", |
476 | (top_of_ram - total_ram) >> 20); | 471 | (top_of_ram - total_ram) >> 20); |
477 | 472 | ||
478 | map_cpu_to_node(boot_cpuid, 0); | ||
479 | for (i = 0; i < lmb.memory.cnt; ++i) | 473 | for (i = 0; i < lmb.memory.cnt; ++i) |
480 | add_region(0, lmb.memory.region[i].base >> PAGE_SHIFT, | 474 | add_region(0, lmb.memory.region[i].base >> PAGE_SHIFT, |
481 | lmb_size_pages(&lmb.memory, i)); | 475 | lmb_size_pages(&lmb.memory, i)); |
@@ -612,6 +606,8 @@ void __init do_init_bootmem(void) | |||
612 | dump_numa_memory_topology(); | 606 | dump_numa_memory_topology(); |
613 | 607 | ||
614 | register_cpu_notifier(&ppc64_numa_nb); | 608 | register_cpu_notifier(&ppc64_numa_nb); |
609 | cpu_numa_callback(&ppc64_numa_nb, CPU_UP_PREPARE, | ||
610 | (void *)(unsigned long)boot_cpuid); | ||
615 | 611 | ||
616 | for_each_online_node(nid) { | 612 | for_each_online_node(nid) { |
617 | unsigned long start_pfn, end_pfn, pages_present; | 613 | unsigned long start_pfn, end_pfn, pages_present; |