aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorTejun Heo <tj@kernel.org>2011-01-28 11:22:48 -0500
committerIngo Molnar <mingo@elte.hu>2011-01-28 11:24:49 -0500
commit4e62445b90ac4ef708bd11c7ae052b1d5ef765b5 (patch)
treeef68db2697e4663cbfb73705631401c8a680eb47 /arch
parent8db78cc4b4048e3add40bca1bc3e55057c319256 (diff)
x86: Fix build failure on X86_UP_APIC
Commit 4c321ff8 (x86: Replace cpu_2_logical_apicid[] with early percpu variable) and following changes introduced and used x86_cpu_to_logical_apicid percpu variable. It was declared and defined inside CONFIG_SMP && CONFIG_X86_32 but if CONFIG_X86_UP_APIC is set UP configuration makes use of it and build fails. Fix it by declaring and defining it inside CONFIG_X86_LOCAL_APIC && CONFIG_X86_32. Signed-off-by: Tejun Heo <tj@kernel.org> Reported-by: Ingo Molnar <mingo@elte.hu> Cc: eric.dumazet@gmail.com Cc: yinghai@kernel.org Cc: brgerst@gmail.com Cc: gorcunov@gmail.com Cc: penberg@kernel.org Cc: shaohui.zheng@intel.com Cc: rientjes@google.com LKML-Reference: <20110128162248.GA25746@htj.dyndns.org> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch')
-rw-r--r--arch/x86/include/asm/smp.h2
-rw-r--r--arch/x86/kernel/apic/apic.c2
2 files changed, 1 insertions, 3 deletions
diff --git a/arch/x86/include/asm/smp.h b/arch/x86/include/asm/smp.h
index dc7c46a89db..75927822c5c 100644
--- a/arch/x86/include/asm/smp.h
+++ b/arch/x86/include/asm/smp.h
@@ -38,7 +38,7 @@ static inline struct cpumask *cpu_core_mask(int cpu)
38 38
39DECLARE_EARLY_PER_CPU(u16, x86_cpu_to_apicid); 39DECLARE_EARLY_PER_CPU(u16, x86_cpu_to_apicid);
40DECLARE_EARLY_PER_CPU(u16, x86_bios_cpu_apicid); 40DECLARE_EARLY_PER_CPU(u16, x86_bios_cpu_apicid);
41#if defined(CONFIG_SMP) && defined(CONFIG_X86_32) 41#if defined(CONFIG_X86_LOCAL_APIC) && defined(CONFIG_X86_32)
42DECLARE_EARLY_PER_CPU(int, x86_cpu_to_logical_apicid); 42DECLARE_EARLY_PER_CPU(int, x86_cpu_to_logical_apicid);
43#endif 43#endif
44 44
diff --git a/arch/x86/kernel/apic/apic.c b/arch/x86/kernel/apic/apic.c
index 4686ea59b7a..1390cf985af 100644
--- a/arch/x86/kernel/apic/apic.c
+++ b/arch/x86/kernel/apic/apic.c
@@ -79,7 +79,6 @@ EXPORT_EARLY_PER_CPU_SYMBOL(x86_bios_cpu_apicid);
79 79
80#ifdef CONFIG_X86_32 80#ifdef CONFIG_X86_32
81 81
82#ifdef CONFIG_SMP
83/* 82/*
84 * On x86_32, the mapping between cpu and logical apicid may vary 83 * On x86_32, the mapping between cpu and logical apicid may vary
85 * depending on apic in use. The following early percpu variable is 84 * depending on apic in use. The following early percpu variable is
@@ -87,7 +86,6 @@ EXPORT_EARLY_PER_CPU_SYMBOL(x86_bios_cpu_apicid);
87 * actually diverge. Let's keep it ugly for now. 86 * actually diverge. Let's keep it ugly for now.
88 */ 87 */
89DEFINE_EARLY_PER_CPU(int, x86_cpu_to_logical_apicid, BAD_APICID); 88DEFINE_EARLY_PER_CPU(int, x86_cpu_to_logical_apicid, BAD_APICID);
90#endif
91 89
92/* 90/*
93 * Knob to control our willingness to enable the local APIC. 91 * Knob to control our willingness to enable the local APIC.