diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-03-19 15:26:15 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-04-17 11:41:01 -0400 |
commit | 1161705bd66df0c80fa45e87190e456c02e6f145 (patch) | |
tree | 022a17bf2ddf7ae63132471db015dea3b9c7d15c /arch | |
parent | a6c422ccdb57924bd20ae408dba8e9db01d09677 (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.c | 6 |
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 */ |
76 | physid_mask_t phys_cpu_present_map; | 76 | physid_mask_t phys_cpu_present_map; |
77 | 77 | ||
78 | #ifndef CONFIG_SMP | ||
79 | DEFINE_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 | ||