aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/smpboot.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/kernel/smpboot.c')
-rw-r--r--arch/x86/kernel/smpboot.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/arch/x86/kernel/smpboot.c b/arch/x86/kernel/smpboot.c
index 2fecda69ee64..d720b7e0cf3d 100644
--- a/arch/x86/kernel/smpboot.c
+++ b/arch/x86/kernel/smpboot.c
@@ -1116,9 +1116,22 @@ void __init native_smp_prepare_cpus(unsigned int max_cpus)
1116 1116
1117 if (is_uv_system()) 1117 if (is_uv_system())
1118 uv_system_init(); 1118 uv_system_init();
1119
1120 set_mtrr_aps_delayed_init();
1119out: 1121out:
1120 preempt_enable(); 1122 preempt_enable();
1121} 1123}
1124
1125void arch_enable_nonboot_cpus_begin(void)
1126{
1127 set_mtrr_aps_delayed_init();
1128}
1129
1130void arch_enable_nonboot_cpus_end(void)
1131{
1132 mtrr_aps_init();
1133}
1134
1122/* 1135/*
1123 * Early setup to make printk work. 1136 * Early setup to make printk work.
1124 */ 1137 */
@@ -1140,6 +1153,7 @@ void __init native_smp_cpus_done(unsigned int max_cpus)
1140 setup_ioapic_dest(); 1153 setup_ioapic_dest();
1141#endif 1154#endif
1142 check_nmi_watchdog(); 1155 check_nmi_watchdog();
1156 mtrr_aps_init();
1143} 1157}
1144 1158
1145static int __initdata setup_possible_cpus = -1; 1159static int __initdata setup_possible_cpus = -1;