x86, smp: refactor ->wake_cpu
authorIngo Molnar <mingo@elte.hu>
Wed, 28 Jan 2009 16:50:18 +0000 (17:50 +0100)
committerIngo Molnar <mingo@elte.hu>
Wed, 28 Jan 2009 22:20:37 +0000 (23:20 +0100)
- remove macro wrappers

Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/include/asm/mach-default/mach_apic.h
arch/x86/include/asm/mach-generic/mach_apic.h
arch/x86/kernel/setup.c
arch/x86/kernel/smpboot.c

index b60b767..bae053c 100644 (file)
@@ -19,10 +19,8 @@ static inline const struct cpumask *default_target_cpus(void)
 #ifdef CONFIG_X86_64
 #include <asm/genapic.h>
 #define read_apic_id()  (apic->get_apic_id(apic_read(APIC_ID)))
-#define wakeup_secondary_cpu (apic->wakeup_cpu)
 extern void default_setup_apic_routing(void);
 #else
-#define wakeup_secondary_cpu wakeup_secondary_cpu_via_init
 /*
  * Set up the logical destination ID.
  *
index ca460e4..96f217f 100644 (file)
@@ -3,8 +3,6 @@
 
 #include <asm/genapic.h>
 
-#define wakeup_secondary_cpu (apic->wakeup_cpu)
-
 extern void generic_bigsmp_probe(void);
 
 #endif /* _ASM_X86_MACH_GENERIC_MACH_APIC_H */
index a58e9f5..6b27f6d 100644 (file)
@@ -589,9 +589,8 @@ early_param("elfcorehdr", setup_elfcorehdr);
 static int __init default_update_genapic(void)
 {
 #ifdef CONFIG_X86_SMP
-# if defined(CONFIG_X86_GENERICARCH) || defined(CONFIG_X86_64)
-       apic->wakeup_cpu = wakeup_secondary_cpu_via_init;
-# endif
+       if (!apic->wakeup_cpu)
+               apic->wakeup_cpu = wakeup_secondary_cpu_via_init;
 #endif
 
        return 0;
index 1fdc1a7..3fed177 100644 (file)
@@ -750,7 +750,7 @@ static int __cpuinit do_boot_cpu(int apicid, int cpu)
 /*
  * NOTE - on most systems this is a PHYSICAL apic ID, but on multiquad
  * (ie clustered apic addressing mode), this is a LOGICAL apic ID.
- * Returns zero if CPU booted OK, else error code from wakeup_secondary_cpu.
+ * Returns zero if CPU booted OK, else error code from ->wakeup_cpu.
  */
 {
        unsigned long boot_error = 0;
@@ -841,7 +841,7 @@ do_rest:
        /*
         * Starting actual IPI sequence...
         */
-       boot_error = wakeup_secondary_cpu(apicid, start_ip);
+       boot_error = apic->wakeup_cpu(apicid, start_ip);
 
        if (!boot_error) {
                /*