aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2008-03-19 15:26:15 -0400
committerIngo Molnar <mingo@elte.hu>2008-04-17 11:41:01 -0400
commit1161705bd66df0c80fa45e87190e456c02e6f145 (patch)
tree022a17bf2ddf7ae63132471db015dea3b9c7d15c /arch
parenta6c422ccdb57924bd20ae408dba8e9db01d09677 (diff)
x86: fill cpu to apicid and present map in mpparse, fix
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch')
-rw-r--r--arch/x86/kernel/mpparse_32.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/x86/kernel/mpparse_32.c b/arch/x86/kernel/mpparse_32.c
index a0cec74b80ef..000b51b78fbd 100644
--- a/arch/x86/kernel/mpparse_32.c
+++ b/arch/x86/kernel/mpparse_32.c
@@ -75,6 +75,10 @@ unsigned disabled_cpus __cpuinitdata;
75/* Bitmask of physically existing CPUs */ 75/* Bitmask of physically existing CPUs */
76physid_mask_t phys_cpu_present_map; 76physid_mask_t phys_cpu_present_map;
77 77
78#ifndef CONFIG_SMP
79DEFINE_PER_CPU(u16, x86_bios_cpu_apicid) = BAD_APICID;
80#endif
81
78/* 82/*
79 * Intel MP BIOS table parsing routines: 83 * Intel MP BIOS table parsing routines:
80 */ 84 */
@@ -229,6 +233,7 @@ static void __cpuinit MP_processor_info (struct mpc_config_processor *m)
229 def_to_bigsmp = 1; 233 def_to_bigsmp = 1;
230 } 234 }
231 } 235 }
236#ifdef CONFIG_SMP
232 /* are we being called early in kernel startup? */ 237 /* are we being called early in kernel startup? */
233 if (x86_cpu_to_apicid_early_ptr) { 238 if (x86_cpu_to_apicid_early_ptr) {
234 u16 *cpu_to_apicid = x86_cpu_to_apicid_early_ptr; 239 u16 *cpu_to_apicid = x86_cpu_to_apicid_early_ptr;
@@ -240,6 +245,7 @@ static void __cpuinit MP_processor_info (struct mpc_config_processor *m)
240 per_cpu(x86_cpu_to_apicid, cpu) = m->mpc_apicid; 245 per_cpu(x86_cpu_to_apicid, cpu) = m->mpc_apicid;
241 per_cpu(x86_bios_cpu_apicid, cpu) = m->mpc_apicid; 246 per_cpu(x86_bios_cpu_apicid, cpu) = m->mpc_apicid;
242 } 247 }
248#endif
243 cpu_set(cpu, cpu_present_map); 249 cpu_set(cpu, cpu_present_map);
244} 250}
245 251