return;
 }
 
-/* Nothing to do for most platforms, since cleared by the INIT cycle */
-static inline void smp_callin_clear_local_apic(void)
-{
-}
-
 static inline void store_NMI_vector(unsigned short *high, unsigned short *low)
 {
 }
 
        return;
 }
 
-/* Nothing to do for most platforms, since cleared by the INIT cycle */
-static inline void smp_callin_clear_local_apic(void)
-{
-}
-
 static inline void store_NMI_vector(unsigned short *high, unsigned short *low)
 {
 }
 
 #ifndef _ASM_X86_MACH_GENERIC_MACH_WAKECPU_H
 #define _ASM_X86_MACH_GENERIC_MACH_WAKECPU_H
 
-#define smp_callin_clear_local_apic (apic->smp_callin_clear_local_apic)
 #define store_NMI_vector (apic->store_NMI_vector)
 #define restore_NMI_vector (apic->restore_NMI_vector)
 #define inquire_remote_apic (apic->inquire_remote_apic)
 
 
 /*
  * Because we use NMIs rather than the INIT-STARTUP sequence to
- * bootstrap the CPUs, the APIC may be in a weird state. Kick it.
+ * bootstrap the CPUs, the APIC may be in a weird state. Kick it:
  */
-static inline void smp_callin_clear_local_apic(void)
+static inline void numaq_smp_callin_clear_local_apic(void)
 {
        clear_local_APIC();
 }
 
         */
 
        pr_debug("CALLIN, before setup_local_APIC().\n");
-       smp_callin_clear_local_apic();
+       if (apic->smp_callin_clear_local_apic)
+               apic->smp_callin_clear_local_apic();
        setup_local_APIC();
        end_local_APIC_setup();
        map_cpu_to_logical_apicid();
 
 
        .wait_for_init_deassert         = default_wait_for_init_deassert,
 
-       .smp_callin_clear_local_apic    = smp_callin_clear_local_apic,
+       .smp_callin_clear_local_apic    = NULL,
+
        .store_NMI_vector               = store_NMI_vector,
        .restore_NMI_vector             = restore_NMI_vector,
        .inquire_remote_apic            = inquire_remote_apic,
 
 
        .wait_for_init_deassert         = default_wait_for_init_deassert,
 
-       .smp_callin_clear_local_apic    = smp_callin_clear_local_apic,
+       .smp_callin_clear_local_apic    = NULL,
        .store_NMI_vector               = store_NMI_vector,
        .restore_NMI_vector             = restore_NMI_vector,
        .inquire_remote_apic            = inquire_remote_apic,
 
 
        .wait_for_init_deassert         = default_wait_for_init_deassert,
 
-       .smp_callin_clear_local_apic    = smp_callin_clear_local_apic,
+       /* Nothing to do for most platforms, since cleared by the INIT cycle: */
+       .smp_callin_clear_local_apic    = NULL,
+
        .store_NMI_vector               = store_NMI_vector,
        .restore_NMI_vector             = restore_NMI_vector,
        .inquire_remote_apic            = inquire_remote_apic,
 
        /* We don't do anything here because we use NMI's to boot instead */
        .wait_for_init_deassert         = NULL,
 
-       .smp_callin_clear_local_apic    = smp_callin_clear_local_apic,
+       .smp_callin_clear_local_apic    = numaq_smp_callin_clear_local_apic,
        .store_NMI_vector               = store_NMI_vector,
        .restore_NMI_vector             = restore_NMI_vector,
        .inquire_remote_apic            = inquire_remote_apic,
 
 
        .wait_for_init_deassert         = default_wait_for_init_deassert,
 
-       .smp_callin_clear_local_apic    = smp_callin_clear_local_apic,
+       .smp_callin_clear_local_apic    = NULL,
+
        .store_NMI_vector               = store_NMI_vector,
        .restore_NMI_vector             = restore_NMI_vector,
        .inquire_remote_apic            = inquire_remote_apic,