Browse Source

x86: unify __cpu_up.

function definition is moved to common header. x86_64 version
is now called native_cpu_up

Signed-off-by: Glauber Costa <gcosta@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Glauber Costa 17 years ago
parent
commit
71d195492a
4 changed files with 9 additions and 6 deletions
  1. 1 0
      arch/x86/kernel/smp_64.c
  2. 1 1
      arch/x86/kernel/smpboot_64.c
  3. 7 0
      include/asm-x86/smp.h
  4. 0 5
      include/asm-x86/smp_32.h

+ 1 - 0
arch/x86/kernel/smp_64.c

@@ -532,5 +532,6 @@ asmlinkage void smp_call_function_interrupt(void)
 struct smp_ops smp_ops = {
 struct smp_ops smp_ops = {
 	.smp_send_reschedule = native_smp_send_reschedule,
 	.smp_send_reschedule = native_smp_send_reschedule,
 	.smp_call_function_mask = native_smp_call_function_mask,
 	.smp_call_function_mask = native_smp_call_function_mask,
+	.cpu_up = native_cpu_up,
 };
 };
 EXPORT_SYMBOL_GPL(smp_ops);
 EXPORT_SYMBOL_GPL(smp_ops);

+ 1 - 1
arch/x86/kernel/smpboot_64.c

@@ -929,7 +929,7 @@ void __init smp_prepare_boot_cpu(void)
 /*
 /*
  * Entry point to boot a CPU.
  * Entry point to boot a CPU.
  */
  */
-int __cpuinit __cpu_up(unsigned int cpu)
+int __cpuinit native_cpu_up(unsigned int cpu)
 {
 {
 	int apicid = cpu_present_to_apicid(cpu);
 	int apicid = cpu_present_to_apicid(cpu);
 	unsigned long flags;
 	unsigned long flags;

+ 7 - 0
include/asm-x86/smp.h

@@ -24,6 +24,11 @@ struct smp_ops {
 #ifdef CONFIG_SMP
 #ifdef CONFIG_SMP
 extern struct smp_ops smp_ops;
 extern struct smp_ops smp_ops;
 
 
+static inline int __cpu_up(unsigned int cpu)
+{
+	return smp_ops.cpu_up(cpu);
+}
+
 static inline void smp_send_reschedule(int cpu)
 static inline void smp_send_reschedule(int cpu)
 {
 {
 	smp_ops.smp_send_reschedule(cpu);
 	smp_ops.smp_send_reschedule(cpu);
@@ -35,6 +40,8 @@ static inline int smp_call_function_mask(cpumask_t mask,
 {
 {
 	return smp_ops.smp_call_function_mask(mask, func, info, wait);
 	return smp_ops.smp_call_function_mask(mask, func, info, wait);
 }
 }
+
+int native_cpu_up(unsigned int cpunum);
 #endif
 #endif
 
 
 #ifdef CONFIG_X86_32
 #ifdef CONFIG_X86_32

+ 0 - 5
include/asm-x86/smp_32.h

@@ -47,10 +47,6 @@ static inline void smp_prepare_cpus(unsigned int max_cpus)
 {
 {
 	smp_ops.smp_prepare_cpus(max_cpus);
 	smp_ops.smp_prepare_cpus(max_cpus);
 }
 }
-static inline int __cpu_up(unsigned int cpu)
-{
-	return smp_ops.cpu_up(cpu);
-}
 static inline void smp_cpus_done(unsigned int max_cpus)
 static inline void smp_cpus_done(unsigned int max_cpus)
 {
 {
 	smp_ops.smp_cpus_done(max_cpus);
 	smp_ops.smp_cpus_done(max_cpus);
@@ -63,7 +59,6 @@ static inline void smp_send_stop(void)
 
 
 void native_smp_prepare_boot_cpu(void);
 void native_smp_prepare_boot_cpu(void);
 void native_smp_prepare_cpus(unsigned int max_cpus);
 void native_smp_prepare_cpus(unsigned int max_cpus);
-int native_cpu_up(unsigned int cpunum);
 void native_smp_cpus_done(unsigned int max_cpus);
 void native_smp_cpus_done(unsigned int max_cpus);
 
 
 #ifndef CONFIG_PARAVIRT
 #ifndef CONFIG_PARAVIRT