提交 c08888cf 编写于 作者: N Nathan Lynch 提交者: Paul Mackerras

[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: NNathan Lynch <nathanl@austin.ibm.com>
Signed-off-by: NPaul Mackerras <paulus@samba.org>
上级 1d7aac5b
...@@ -375,7 +375,7 @@ static int __init parse_numa_properties(void) ...@@ -375,7 +375,7 @@ static int __init parse_numa_properties(void)
{ {
struct device_node *cpu = NULL; struct device_node *cpu = NULL;
struct device_node *memory = NULL; struct device_node *memory = NULL;
int max_domain; int max_domain = 0;
unsigned long i; unsigned long i;
if (numa_enabled == 0) { if (numa_enabled == 0) {
...@@ -389,8 +389,6 @@ static int __init parse_numa_properties(void) ...@@ -389,8 +389,6 @@ static int __init parse_numa_properties(void)
if (min_common_depth < 0) if (min_common_depth < 0)
return min_common_depth; return min_common_depth;
max_domain = numa_setup_cpu(boot_cpuid);
/* /*
* Even though we connect cpus to numa domains later in SMP init, * 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 * we need to know the maximum node id now. This is because each
...@@ -469,6 +467,8 @@ static int __init parse_numa_properties(void) ...@@ -469,6 +467,8 @@ static int __init parse_numa_properties(void)
for (i = 0; i <= max_domain; i++) for (i = 0; i <= max_domain; i++)
node_set_online(i); node_set_online(i);
max_domain = numa_setup_cpu(boot_cpuid);
return 0; return 0;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册