diff options
author | Alexander van Heukelum <heukelum@fastmail.fm> | 2008-09-09 15:55:57 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-10-13 04:20:06 -0400 |
commit | 976382dcbe3a2233f48cda5b0840874f43a30825 (patch) | |
tree | e41fd48484ee1a198733cff20975a370a1afa172 /arch/x86/kernel/traps_32.c | |
parent | 61aef7d24909b95f9eddaa78d78902fbea1d7059 (diff) |
i386: convert hardware exception 0 to an interrupt gate
Handle divide error exception with interrupt initially off.
Signed-off-by: Alexander van Heukelum <heukelum@fastmail.fm>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/traps_32.c')
-rw-r--r-- | arch/x86/kernel/traps_32.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/x86/kernel/traps_32.c b/arch/x86/kernel/traps_32.c index fe6dd972068d..c18824b9d1ab 100644 --- a/arch/x86/kernel/traps_32.c +++ b/arch/x86/kernel/traps_32.c | |||
@@ -632,7 +632,7 @@ void do_##name(struct pt_regs *regs, long error_code) \ | |||
632 | do_trap(trapnr, signr, str, 1, regs, error_code, &info); \ | 632 | do_trap(trapnr, signr, str, 1, regs, error_code, &info); \ |
633 | } | 633 | } |
634 | 634 | ||
635 | DO_VM86_TRAP_INFO(0, SIGFPE, "divide error", divide_error, FPE_INTDIV, regs->ip) | 635 | DO_VM86_ERROR_INFO(0, SIGFPE, "divide error", divide_error, FPE_INTDIV, regs->ip) |
636 | #ifndef CONFIG_KPROBES | 636 | #ifndef CONFIG_KPROBES |
637 | DO_VM86_TRAP(3, SIGTRAP, "int3", int3) | 637 | DO_VM86_TRAP(3, SIGTRAP, "int3", int3) |
638 | #endif | 638 | #endif |
@@ -1247,7 +1247,7 @@ void __init trap_init(void) | |||
1247 | early_iounmap(p, 4); | 1247 | early_iounmap(p, 4); |
1248 | #endif | 1248 | #endif |
1249 | 1249 | ||
1250 | set_trap_gate(0, ÷_error); | 1250 | set_intr_gate(0, ÷_error); |
1251 | set_intr_gate(1, &debug); | 1251 | set_intr_gate(1, &debug); |
1252 | set_intr_gate(2, &nmi); | 1252 | set_intr_gate(2, &nmi); |
1253 | set_system_intr_gate(3, &int3); /* int3 can be called from all */ | 1253 | set_system_intr_gate(3, &int3); /* int3 can be called from all */ |