aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGlauber Costa <gcosta@redhat.com>2008-03-03 12:12:39 -0500
committerIngo Molnar <mingo@elte.hu>2008-04-17 11:40:53 -0400
commitc559764923dacef301116a248695856e6eb96e48 (patch)
tree6ab62d053e683aeb130025f260dfd4de86252bb3
parent7557da67208f6ed3a1073594b7597bf20c9eb63a (diff)
x86: unify smp_cpus_done
definition is moved to common header. x86_64 version is now called native_smp_cpus_done Signed-off-by: Glauber Costa <gcosta@redhat.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r--arch/x86/kernel/smp_64.c2
-rw-r--r--arch/x86/kernel/smpboot_64.c2
-rw-r--r--include/asm-x86/smp.h6
-rw-r--r--include/asm-x86/smp_32.h7
4 files changed, 9 insertions, 8 deletions
diff --git a/arch/x86/kernel/smp_64.c b/arch/x86/kernel/smp_64.c
index c520374be1a8..275101ab4b6d 100644
--- a/arch/x86/kernel/smp_64.c
+++ b/arch/x86/kernel/smp_64.c
@@ -532,6 +532,8 @@ asmlinkage void smp_call_function_interrupt(void)
532struct smp_ops smp_ops = { 532struct smp_ops smp_ops = {
533 .smp_prepare_boot_cpu = native_smp_prepare_boot_cpu, 533 .smp_prepare_boot_cpu = native_smp_prepare_boot_cpu,
534 .smp_prepare_cpus = native_smp_prepare_cpus, 534 .smp_prepare_cpus = native_smp_prepare_cpus,
535 .smp_cpus_done = native_smp_cpus_done,
536
535 .smp_send_reschedule = native_smp_send_reschedule, 537 .smp_send_reschedule = native_smp_send_reschedule,
536 .smp_call_function_mask = native_smp_call_function_mask, 538 .smp_call_function_mask = native_smp_call_function_mask,
537 .cpu_up = native_cpu_up, 539 .cpu_up = native_cpu_up,
diff --git a/arch/x86/kernel/smpboot_64.c b/arch/x86/kernel/smpboot_64.c
index b106983050b0..fd0d3a93b995 100644
--- a/arch/x86/kernel/smpboot_64.c
+++ b/arch/x86/kernel/smpboot_64.c
@@ -987,7 +987,7 @@ int __cpuinit native_cpu_up(unsigned int cpu)
987/* 987/*
988 * Finish the SMP boot. 988 * Finish the SMP boot.
989 */ 989 */
990void __init smp_cpus_done(unsigned int max_cpus) 990void __init native_smp_cpus_done(unsigned int max_cpus)
991{ 991{
992 smp_cleanup_boot(); 992 smp_cleanup_boot();
993 setup_ioapic_dest(); 993 setup_ioapic_dest();
diff --git a/include/asm-x86/smp.h b/include/asm-x86/smp.h
index 31bd99ddd8c2..9620165d3b78 100644
--- a/include/asm-x86/smp.h
+++ b/include/asm-x86/smp.h
@@ -34,6 +34,11 @@ static inline void smp_prepare_cpus(unsigned int max_cpus)
34 smp_ops.smp_prepare_cpus(max_cpus); 34 smp_ops.smp_prepare_cpus(max_cpus);
35} 35}
36 36
37static inline void smp_cpus_done(unsigned int max_cpus)
38{
39 smp_ops.smp_cpus_done(max_cpus);
40}
41
37static inline int __cpu_up(unsigned int cpu) 42static inline int __cpu_up(unsigned int cpu)
38{ 43{
39 return smp_ops.cpu_up(cpu); 44 return smp_ops.cpu_up(cpu);
@@ -53,6 +58,7 @@ static inline int smp_call_function_mask(cpumask_t mask,
53 58
54void native_smp_prepare_boot_cpu(void); 59void native_smp_prepare_boot_cpu(void);
55void native_smp_prepare_cpus(unsigned int max_cpus); 60void native_smp_prepare_cpus(unsigned int max_cpus);
61void native_smp_cpus_done(unsigned int max_cpus);
56int native_cpu_up(unsigned int cpunum); 62int native_cpu_up(unsigned int cpunum);
57#endif 63#endif
58 64
diff --git a/include/asm-x86/smp_32.h b/include/asm-x86/smp_32.h
index 50785389680b..bc90a4ed3235 100644
--- a/include/asm-x86/smp_32.h
+++ b/include/asm-x86/smp_32.h
@@ -39,18 +39,11 @@ extern void remove_siblinginfo(int cpu);
39extern void set_cpu_sibling_map(int cpu); 39extern void set_cpu_sibling_map(int cpu);
40 40
41#ifdef CONFIG_SMP 41#ifdef CONFIG_SMP
42static inline void smp_cpus_done(unsigned int max_cpus)
43{
44 smp_ops.smp_cpus_done(max_cpus);
45}
46
47static inline void smp_send_stop(void) 42static inline void smp_send_stop(void)
48{ 43{
49 smp_ops.smp_send_stop(); 44 smp_ops.smp_send_stop();
50} 45}
51 46
52void native_smp_cpus_done(unsigned int max_cpus);
53
54#ifndef CONFIG_PARAVIRT 47#ifndef CONFIG_PARAVIRT
55#define startup_ipi_hook(phys_apicid, start_eip, start_esp) do { } while (0) 48#define startup_ipi_hook(phys_apicid, start_eip, start_esp) do { } while (0)
56#endif 49#endif