diff options
author | Ingo Molnar <mingo@elte.hu> | 2009-01-28 10:31:52 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-01-28 17:20:33 -0500 |
commit | 333344d94300500e401cffb4eea10a5ab6e5a41d (patch) | |
tree | 21dd26c49dfba195a03e2fa860fe4d3123ca3de8 /arch/x86/kernel/smpboot.c | |
parent | a965936643e28af8152d9e960b966baa1a5588a2 (diff) |
x86, smp: refactor ->smp_callin_clear_local_apic() methods
Only NUMAQ does something substantial here, because it initializes
via NMIs (not via INIT as standard SMP startup) - so it needs to
reset the APIC.
- extend the generic code to handle NULL methods
- clear out dummy methods and replace them with NULL
- clean up: remove wrapper macros, etc.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/smpboot.c')
-rw-r--r-- | arch/x86/kernel/smpboot.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/x86/kernel/smpboot.c b/arch/x86/kernel/smpboot.c index 558af378a61d..10873a46b299 100644 --- a/arch/x86/kernel/smpboot.c +++ b/arch/x86/kernel/smpboot.c | |||
@@ -244,7 +244,8 @@ static void __cpuinit smp_callin(void) | |||
244 | */ | 244 | */ |
245 | 245 | ||
246 | pr_debug("CALLIN, before setup_local_APIC().\n"); | 246 | pr_debug("CALLIN, before setup_local_APIC().\n"); |
247 | smp_callin_clear_local_apic(); | 247 | if (apic->smp_callin_clear_local_apic) |
248 | apic->smp_callin_clear_local_apic(); | ||
248 | setup_local_APIC(); | 249 | setup_local_APIC(); |
249 | end_local_APIC_setup(); | 250 | end_local_APIC_setup(); |
250 | map_cpu_to_logical_apicid(); | 251 | map_cpu_to_logical_apicid(); |