aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/x86/kernel/smpboot_32.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/x86/kernel/smpboot_32.c b/arch/x86/kernel/smpboot_32.c
index 75fb5064af66..14db038b6b48 100644
--- a/arch/x86/kernel/smpboot_32.c
+++ b/arch/x86/kernel/smpboot_32.c
@@ -106,7 +106,11 @@ static void __init disable_smp(void)
106 cpu_possible_map = cpumask_of_cpu(0); 106 cpu_possible_map = cpumask_of_cpu(0);
107 cpu_present_map = cpumask_of_cpu(0); 107 cpu_present_map = cpumask_of_cpu(0);
108 smpboot_clear_io_apic_irqs(); 108 smpboot_clear_io_apic_irqs();
109 phys_cpu_present_map = physid_mask_of_physid(0); 109 if (smp_found_config)
110 phys_cpu_present_map =
111 physid_mask_of_physid(boot_cpu_physical_apicid);
112 else
113 phys_cpu_present_map = physid_mask_of_physid(0);
110 map_cpu_to_logical_apicid(); 114 map_cpu_to_logical_apicid();
111 cpu_set(0, per_cpu(cpu_sibling_map, 0)); 115 cpu_set(0, per_cpu(cpu_sibling_map, 0));
112 cpu_set(0, per_cpu(cpu_core_map, 0)); 116 cpu_set(0, per_cpu(cpu_core_map, 0));