aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/smpboot_32.c
diff options
context:
space:
mode:
authorGlauber de Oliveira Costa <gcosta@redhat.com>2008-03-19 13:25:52 -0400
committerIngo Molnar <mingo@elte.hu>2008-04-17 11:41:02 -0400
commit4370ee4d3b7772158174bf6f0bf08359c2ccf54b (patch)
treee49133eba16fa6ccd14c674c208db1bbfefe9336 /arch/x86/kernel/smpboot_32.c
parent6becedbb06072c5741d4057b9facecb4b3143711 (diff)
x86: call do_boot_cpu directly from native_cpu_up
We don't need __smp_prepare_cpu anymore. 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.c21
1 files changed, 6 insertions, 15 deletions
diff --git a/arch/x86/kernel/smpboot_32.c b/arch/x86/kernel/smpboot_32.c
index 5165b11d8aac..4ba5ab2d81fb 100644
--- a/arch/x86/kernel/smpboot_32.c
+++ b/arch/x86/kernel/smpboot_32.c
@@ -702,20 +702,6 @@ void cpu_exit_clear(void)
702} 702}
703#endif 703#endif
704 704
705static void __cpuinit __smp_prepare_cpu(int cpu)
706{
707 int apicid;
708
709 apicid = per_cpu(x86_cpu_to_apicid, cpu);
710
711 /* init low mem mapping */
712 clone_pgd_range(swapper_pg_dir, swapper_pg_dir + USER_PGD_PTRS,
713 min_t(unsigned long, KERNEL_PGD_PTRS, USER_PGD_PTRS));
714 flush_tlb_all();
715
716 do_boot_cpu(apicid, cpu);
717}
718
719static int boot_cpu_logical_apicid; 705static int boot_cpu_logical_apicid;
720/* Where the IO area was mapped on multiquad, always 0 otherwise */ 706/* Where the IO area was mapped on multiquad, always 0 otherwise */
721void *xquad_portio; 707void *xquad_portio;
@@ -872,7 +858,12 @@ int __cpuinit native_cpu_up(unsigned int cpu)
872 858
873 per_cpu(cpu_state, cpu) = CPU_UP_PREPARE; 859 per_cpu(cpu_state, cpu) = CPU_UP_PREPARE;
874 860
875 __smp_prepare_cpu(cpu); 861 /* init low mem mapping */
862 clone_pgd_range(swapper_pg_dir, swapper_pg_dir + USER_PGD_PTRS,
863 min_t(unsigned long, KERNEL_PGD_PTRS, USER_PGD_PTRS));
864 flush_tlb_all();
865
866 do_boot_cpu(apicid, cpu);
876 867
877 /* In case one didn't come up */ 868 /* In case one didn't come up */
878 if (!cpu_isset(cpu, cpu_callin_map)) { 869 if (!cpu_isset(cpu, cpu_callin_map)) {