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 | 7bd06ec63a1204ca44b9f1dc487b8632016162d1 (patch) | |
tree | f9c89011185f9ba4be2a20e7d9fed14f3b50ab7e /arch/x86/kernel/smpboot.c | |
parent | 333344d94300500e401cffb4eea10a5ab6e5a41d (diff) |
x86, smp: refactor ->store/restore_NMI_vector() methods
Only NUMAQ does something substantial here, because it initializes
via NMIs (not via INIT as standard SMP startup) - so it needs to
store and restore the NMI vector.
- 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 10873a46b299..1492024592ff 100644 --- a/arch/x86/kernel/smpboot.c +++ b/arch/x86/kernel/smpboot.c | |||
@@ -826,7 +826,8 @@ do_rest: | |||
826 | 826 | ||
827 | pr_debug("Setting warm reset code and vector.\n"); | 827 | pr_debug("Setting warm reset code and vector.\n"); |
828 | 828 | ||
829 | store_NMI_vector(&nmi_high, &nmi_low); | 829 | if (apic->store_NMI_vector) |
830 | apic->store_NMI_vector(&nmi_high, &nmi_low); | ||
830 | 831 | ||
831 | smpboot_setup_warm_reset_vector(start_ip); | 832 | smpboot_setup_warm_reset_vector(start_ip); |
832 | /* | 833 | /* |