From 1161705bd66df0c80fa45e87190e456c02e6f145 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo@elte.hu>
Date: Wed, 19 Mar 2008 20:26:15 +0100
Subject: [PATCH] x86: fill cpu to apicid and present map in mpparse, fix

Signed-off-by: Ingo Molnar <mingo@elte.hu>
---
 arch/x86/kernel/mpparse_32.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/arch/x86/kernel/mpparse_32.c b/arch/x86/kernel/mpparse_32.c
index a0cec74b80ef3..000b51b78fbdc 100644
--- a/arch/x86/kernel/mpparse_32.c
+++ b/arch/x86/kernel/mpparse_32.c
@@ -75,6 +75,10 @@ unsigned disabled_cpus __cpuinitdata;
 /* Bitmask of physically existing CPUs */
 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:
  */
@@ -229,6 +233,7 @@ static void __cpuinit MP_processor_info (struct mpc_config_processor *m)
 			def_to_bigsmp = 1;
 		}
 	}
+#ifdef CONFIG_SMP
 	/* are we being called early in kernel startup? */
 	if (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)
 		per_cpu(x86_cpu_to_apicid, cpu) = m->mpc_apicid;
 		per_cpu(x86_bios_cpu_apicid, cpu) = m->mpc_apicid;
 	}
+#endif
 	cpu_set(cpu, cpu_present_map);
 }
 
-- 
2.30.2