diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2006-07-08 01:07:40 +0200 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2006-10-09 23:20:46 +0100 |
commit | 0e8f8f54c1537d22eb0168622a5f6aef4040da6a (patch) | |
tree | 47c636803f431d35fcfc77979b3331ac6e6d0943 /arch | |
parent | 18965513fdc3af976f000f231ee216500d707c11 (diff) | |
download | op-kernel-dev-0e8f8f54c1537d22eb0168622a5f6aef4040da6a.zip op-kernel-dev-0e8f8f54c1537d22eb0168622a5f6aef4040da6a.tar.gz |
[MIPS] NUMA: Register all nodes before cpus or sysfs will barf.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/mips/kernel/smp.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/arch/mips/kernel/smp.c b/arch/mips/kernel/smp.c index 2218958..1af3612 100644 --- a/arch/mips/kernel/smp.c +++ b/arch/mips/kernel/smp.c @@ -467,14 +467,18 @@ static DEFINE_PER_CPU(struct cpu, cpu_devices); static int __init topology_init(void) { - int cpu; - int ret; + int i, ret; - for_each_present_cpu(cpu) { - ret = register_cpu(&per_cpu(cpu_devices, cpu), cpu); +#ifdef CONFIG_NUMA + for_each_online_node(i) + register_one_node(i); +#endif /* CONFIG_NUMA */ + + for_each_present_cpu(i) { + ret = register_cpu(&per_cpu(cpu_devices, i), i); if (ret) printk(KERN_WARNING "topology_init: register_cpu %d " - "failed (%d)\n", cpu, ret); + "failed (%d)\n", i, ret); } return 0; |