aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86_64/kernel/smpboot.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86_64/kernel/smpboot.c')
-rw-r--r--arch/x86_64/kernel/smpboot.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/x86_64/kernel/smpboot.c b/arch/x86_64/kernel/smpboot.c
index 62c2e747af58..4c161c208d5b 100644
--- a/arch/x86_64/kernel/smpboot.c
+++ b/arch/x86_64/kernel/smpboot.c
@@ -60,6 +60,7 @@
60#include <asm/irq.h> 60#include <asm/irq.h>
61#include <asm/hw_irq.h> 61#include <asm/hw_irq.h>
62#include <asm/numa.h> 62#include <asm/numa.h>
63#include <asm/genapic.h>
63 64
64/* Number of siblings per CPU package */ 65/* Number of siblings per CPU package */
65int smp_num_siblings = 1; 66int smp_num_siblings = 1;
@@ -1167,6 +1168,13 @@ int __cpuinit __cpu_up(unsigned int cpu)
1167 1168
1168 while (!cpu_isset(cpu, cpu_online_map)) 1169 while (!cpu_isset(cpu, cpu_online_map))
1169 cpu_relax(); 1170 cpu_relax();
1171
1172 if (num_online_cpus() > 8 && genapic == &apic_flat) {
1173 printk(KERN_WARNING
1174 "flat APIC routing can't be used with > 8 cpus\n");
1175 BUG();
1176 }
1177
1170 err = 0; 1178 err = 0;
1171 1179
1172 return err; 1180 return err;