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.c21
1 files changed, 20 insertions, 1 deletions
diff --git a/arch/x86/kernel/smpboot.c b/arch/x86/kernel/smpboot.c
index b214d8dcc07a..26118b4a1c38 100644
--- a/arch/x86/kernel/smpboot.c
+++ b/arch/x86/kernel/smpboot.c
@@ -880,7 +880,6 @@ do_rest:
880 apic_write(APIC_ESR, 0); 880 apic_write(APIC_ESR, 0);
881 apic_read(APIC_ESR); 881 apic_read(APIC_ESR);
882 882
883
884 /* 883 /*
885 * Starting actual IPI sequence... 884 * Starting actual IPI sequence...
886 */ 885 */
@@ -1017,6 +1016,26 @@ void __init native_smp_prepare_boot_cpu(void)
1017 per_cpu(cpu_state, me) = CPU_ONLINE; 1016 per_cpu(cpu_state, me) = CPU_ONLINE;
1018} 1017}
1019 1018
1019void __init native_smp_cpus_done(unsigned int max_cpus)
1020{
1021 /*
1022 * Cleanup possible dangling ends...
1023 */
1024 smpboot_restore_warm_reset_vector();
1025
1026 Dprintk("Boot done.\n");
1027
1028 impress_friends();
1029 smp_checks();
1030#ifdef CONFIG_X86_IO_APIC
1031 setup_ioapic_dest();
1032#endif
1033 check_nmi_watchdog();
1034#ifdef CONFIG_X86_32
1035 zap_low_mappings();
1036#endif
1037}
1038
1020#ifdef CONFIG_HOTPLUG_CPU 1039#ifdef CONFIG_HOTPLUG_CPU
1021void remove_siblinginfo(int cpu) 1040void remove_siblinginfo(int cpu)
1022{ 1041{