diff options
author | Nathan Lynch <nathanl@austin.ibm.com> | 2006-03-21 03:34:15 +0300 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2006-03-22 07:03:40 +0300 |
commit | c08888cf3c80fe07bfd176113c390ca31d3ba5c2 (patch) | |
tree | 37d6ef3a46dca009c997e337874a194551bd4fcd /arch/powerpc/mm/numa.c | |
parent | 1d7aac5b3bce34c8b5fcec8ca577a4d3af880fd3 (diff) | |
download | linux-c08888cf3c80fe07bfd176113c390ca31d3ba5c2.tar.xz |
[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/mm/numa.c')
-rw-r--r-- | arch/powerpc/mm/numa.c | 6 |
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) { struct device_node *cpu = NULL; struct device_node *memory = NULL; - int max_domain; + int max_domain = 0; unsigned long i; if (numa_enabled == 0) { @@ -389,8 +389,6 @@ static int __init parse_numa_properties(void) if (min_common_depth < 0) return min_common_depth; - max_domain = numa_setup_cpu(boot_cpuid); - /* * Even though we connect cpus to numa domains later in SMP init, * we need to know the maximum node id now. This is because each @@ -469,6 +467,8 @@ new_range: for (i = 0; i <= max_domain; i++) node_set_online(i); + max_domain = numa_setup_cpu(boot_cpuid); + return 0; } |