aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorRavikiran G Thirumalai <kiran@scalex86.org>2005-09-30 11:59:21 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2005-09-30 12:41:20 -0700
commite6a045a5b89037ae87c8c1bc84403f1d498e52a1 (patch)
tree6e031521bec77df6f47ae65ff3375123d57623d2 /arch
parent2dd960d66bc12b6b206e63104636514e5da0ddb7 (diff)
downloadkernel_samsung_smdk4412-e6a045a5b89037ae87c8c1bc84403f1d498e52a1.zip
kernel_samsung_smdk4412-e6a045a5b89037ae87c8c1bc84403f1d498e52a1.tar.gz
kernel_samsung_smdk4412-e6a045a5b89037ae87c8c1bc84403f1d498e52a1.tar.bz2
[PATCH] x86_64: fix the BP node_to_cpumask
Fix the BP node_to_cpumask. 2.6.14-rc* broke the boot cpu bit as the cpu_to_node(0) is now not setup early enough for numa_init_array. cpu_to_node[] is setup much later at srat_detect_node on acpi srat based em64t machines. This seems like a problem on amd machines too, Tested on em64t though. /sys/devices/system/node/node0/cpumap shows up sanely after this patch. Signed off by: Ravikiran Thirumalai <kiran@scalex86.org> Signed-off-by: Shai Fultheim <shai@scalex86.org> Cc: Andi Kleen <ak@muc.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/x86_64/mm/numa.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/arch/x86_64/mm/numa.c b/arch/x86_64/mm/numa.c
index 80a49d9..68ad758 100644
--- a/arch/x86_64/mm/numa.c
+++ b/arch/x86_64/mm/numa.c
@@ -178,7 +178,6 @@ void __init numa_init_array(void)
rr++;
}
- set_bit(0, &node_to_cpumask[cpu_to_node(0)]);
}
#ifdef CONFIG_NUMA_EMU
@@ -266,9 +265,7 @@ void __init numa_initmem_init(unsigned long start_pfn, unsigned long end_pfn)
__cpuinit void numa_add_cpu(int cpu)
{
- /* BP is initialized elsewhere */
- if (cpu)
- set_bit(cpu, &node_to_cpumask[cpu_to_node(cpu)]);
+ set_bit(cpu, &node_to_cpumask[cpu_to_node(cpu)]);
}
unsigned long __init numa_free_all_bootmem(void)