diff options
author | Glauber de Oliveira Costa <gcosta@redhat.com> | 2008-03-19 14:25:29 -0300 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-04-17 17:41:01 +0200 |
commit | f68e00a32b4f5a2881c3a39d71cc2c22e92f1d99 (patch) | |
tree | 5cf8e7cc674b388c15d211b0433313ffb0f9000e /arch/x86/kernel/smpboot_32.c | |
parent | 693d4b8a6429af7f2029df20a59e22f4d752e141 (diff) |
x86: move impress_friends and smp_check to cpus_done
the cpu count is changed accordingly: now, what matters is
online cpus.
Also, we add those functions for x86_64
Signed-off-by: Glauber Costa <gcosta@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/smpboot_32.c')
-rw-r--r-- | arch/x86/kernel/smpboot_32.c | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/arch/x86/kernel/smpboot_32.c b/arch/x86/kernel/smpboot_32.c index 361851cdaa9..1736404c3c3 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) return 0; } -extern void impress_friends(void); -extern void smp_checks(void); /* * Cycle through the processors sending APIC IPIs to boot each. */ @@ -858,14 +856,6 @@ static void __init smp_boot_cpus(unsigned int max_cpus) } /* - * Cleanup possible dangling ends... - */ - smpboot_restore_warm_reset_vector(); - - impress_friends(); - - smp_checks(); - /* * construct cpu_sibling_map, so that we can tell sibling CPUs * efficiently. */ @@ -959,8 +949,20 @@ int __cpuinit native_cpu_up(unsigned int cpu) return 0; } +extern void impress_friends(void); +extern void smp_checks(void); + void __init native_smp_cpus_done(unsigned int max_cpus) { + /* + * Cleanup possible dangling ends... + */ + smpboot_restore_warm_reset_vector(); + + Dprintk("Boot done.\n"); + + impress_friends(); + smp_checks(); #ifdef CONFIG_X86_IO_APIC setup_ioapic_dest(); #endif |