aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc
diff options
context:
space:
mode:
authorNathan Lynch <nathanl@austin.ibm.com>2006-03-20 19:34:15 -0500
committerPaul Mackerras <paulus@samba.org>2006-03-21 23:03:40 -0500
commitc08888cf3c80fe07bfd176113c390ca31d3ba5c2 (patch)
tree37d6ef3a46dca009c997e337874a194551bd4fcd /arch/powerpc
parent1d7aac5b3bce34c8b5fcec8ca577a4d3af880fd3 (diff)
[PATCH] powerpc numa: fix boot_cpuid always assigned to node 0
At boot, the numa code is assigning boot_cpuid to node 0 unconditionally. Basically, numa_setup_cpu is being stupid about it, but this is the minimal fix -- just call numa_setup_cpu(boot_cpuid) later, after all nodes have been set online. Signed-off-by: Nathan Lynch <nathanl@austin.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc')
-rw-r--r--arch/powerpc/mm/numa.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/powerpc/mm/numa.c b/arch/powerpc/mm/numa.c
index da5280f8cf42..dc6392ce2530 100644
--- a/arch/powerpc/mm/numa.c
+++ b/arch/powerpc/mm/numa.c
@@ -375,7 +375,7 @@ static int __init parse_numa_properties(void)
375{ 375{
376 struct device_node *cpu = NULL; 376 struct device_node *cpu = NULL;
377 struct device_node *memory = NULL; 377 struct device_node *memory = NULL;
378 int max_domain; 378 int max_domain = 0;
379 unsigned long i; 379 unsigned long i;
380 380
381 if (numa_enabled == 0) { 381 if (numa_enabled == 0) {
@@ -389,8 +389,6 @@ static int __init parse_numa_properties(void)
389 if (min_common_depth < 0) 389 if (min_common_depth < 0)
390 return min_common_depth; 390 return min_common_depth;
391 391
392 max_domain = numa_setup_cpu(boot_cpuid);
393
394 /* 392 /*
395 * Even though we connect cpus to numa domains later in SMP init, 393 * Even though we connect cpus to numa domains later in SMP init,
396 * we need to know the maximum node id now. This is because each 394 * we need to know the maximum node id now. This is because each
@@ -469,6 +467,8 @@ new_range:
469 for (i = 0; i <= max_domain; i++) 467 for (i = 0; i <= max_domain; i++)
470 node_set_online(i); 468 node_set_online(i);
471 469
470 max_domain = numa_setup_cpu(boot_cpuid);
471
472 return 0; 472 return 0;
473} 473}
474 474