Commit 1161705b authored by Ingo Molnar's avatar Ingo Molnar

x86: fill cpu to apicid and present map in mpparse, fix

Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent a6c422cc
...@@ -75,6 +75,10 @@ unsigned disabled_cpus __cpuinitdata; ...@@ -75,6 +75,10 @@ unsigned disabled_cpus __cpuinitdata;
/* Bitmask of physically existing CPUs */ /* Bitmask of physically existing CPUs */
physid_mask_t phys_cpu_present_map; physid_mask_t phys_cpu_present_map;
#ifndef CONFIG_SMP
DEFINE_PER_CPU(u16, x86_bios_cpu_apicid) = BAD_APICID;
#endif
/* /*
* Intel MP BIOS table parsing routines: * Intel MP BIOS table parsing routines:
*/ */
...@@ -229,6 +233,7 @@ static void __cpuinit MP_processor_info (struct mpc_config_processor *m) ...@@ -229,6 +233,7 @@ static void __cpuinit MP_processor_info (struct mpc_config_processor *m)
def_to_bigsmp = 1; def_to_bigsmp = 1;
} }
} }
#ifdef CONFIG_SMP
/* are we being called early in kernel startup? */ /* are we being called early in kernel startup? */
if (x86_cpu_to_apicid_early_ptr) { if (x86_cpu_to_apicid_early_ptr) {
u16 *cpu_to_apicid = x86_cpu_to_apicid_early_ptr; 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,6 +245,7 @@ static void __cpuinit MP_processor_info (struct mpc_config_processor *m)
per_cpu(x86_cpu_to_apicid, cpu) = m->mpc_apicid; per_cpu(x86_cpu_to_apicid, cpu) = m->mpc_apicid;
per_cpu(x86_bios_cpu_apicid, cpu) = m->mpc_apicid; per_cpu(x86_bios_cpu_apicid, cpu) = m->mpc_apicid;
} }
#endif
cpu_set(cpu, cpu_present_map); cpu_set(cpu, cpu_present_map);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment