aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/smpboot_32.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/kernel/smpboot_32.c')
-rw-r--r--arch/x86/kernel/smpboot_32.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/arch/x86/kernel/smpboot_32.c b/arch/x86/kernel/smpboot_32.c
index 361851cdaa97..1736404c3c36 100644
--- a/arch/x86/kernel/smpboot_32.c
+++ b/arch/x86/kernel/smpboot_32.c
@@ -788,8 +788,6 @@ static int __init smp_sanity_check(unsigned max_cpus)
788 return 0; 788 return 0;
789} 789}
790 790
791extern void impress_friends(void);
792extern void smp_checks(void);
793/* 791/*
794 * Cycle through the processors sending APIC IPIs to boot each. 792 * Cycle through the processors sending APIC IPIs to boot each.
795 */ 793 */
@@ -858,14 +856,6 @@ static void __init smp_boot_cpus(unsigned int max_cpus)
858 } 856 }
859 857
860 /* 858 /*
861 * Cleanup possible dangling ends...
862 */
863 smpboot_restore_warm_reset_vector();
864
865 impress_friends();
866
867 smp_checks();
868 /*
869 * construct cpu_sibling_map, so that we can tell sibling CPUs 859 * construct cpu_sibling_map, so that we can tell sibling CPUs
870 * efficiently. 860 * efficiently.
871 */ 861 */
@@ -959,8 +949,20 @@ int __cpuinit native_cpu_up(unsigned int cpu)
959 return 0; 949 return 0;
960} 950}
961 951
952extern void impress_friends(void);
953extern void smp_checks(void);
954
962void __init native_smp_cpus_done(unsigned int max_cpus) 955void __init native_smp_cpus_done(unsigned int max_cpus)
963{ 956{
957 /*
958 * Cleanup possible dangling ends...
959 */
960 smpboot_restore_warm_reset_vector();
961
962 Dprintk("Boot done.\n");
963
964 impress_friends();
965 smp_checks();
964#ifdef CONFIG_X86_IO_APIC 966#ifdef CONFIG_X86_IO_APIC
965 setup_ioapic_dest(); 967 setup_ioapic_dest();
966#endif 968#endif