aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/x86/kernel/traps.c24
1 files changed, 9 insertions, 15 deletions
diff --git a/arch/x86/kernel/traps.c b/arch/x86/kernel/traps.c
index c9dd74124038..73b3ea32245a 100644
--- a/arch/x86/kernel/traps.c
+++ b/arch/x86/kernel/traps.c
@@ -224,23 +224,17 @@ dotraplinkage void do_##name(struct pt_regs *regs, long error_code) \
224 do_error_trap(regs, error_code, str, trapnr, signr); \ 224 do_error_trap(regs, error_code, str, trapnr, signr); \
225} 225}
226 226
227#define DO_ERROR_INFO(trapnr, signr, str, name) \ 227DO_ERROR(X86_TRAP_DE, SIGFPE, "divide error", divide_error)
228dotraplinkage void do_##name(struct pt_regs *regs, long error_code) \ 228DO_ERROR(X86_TRAP_OF, SIGSEGV, "overflow", overflow)
229{ \ 229DO_ERROR(X86_TRAP_BR, SIGSEGV, "bounds", bounds)
230 do_error_trap(regs, error_code, str, trapnr, signr); \ 230DO_ERROR(X86_TRAP_UD, SIGILL, "invalid opcode", invalid_op)
231} 231DO_ERROR(X86_TRAP_OLD_MF, SIGFPE, "coprocessor segment overrun",coprocessor_segment_overrun)
232 232DO_ERROR(X86_TRAP_TS, SIGSEGV, "invalid TSS", invalid_TSS)
233DO_ERROR_INFO(X86_TRAP_DE, SIGFPE, "divide error", divide_error) 233DO_ERROR(X86_TRAP_NP, SIGBUS, "segment not present", segment_not_present)
234DO_ERROR (X86_TRAP_OF, SIGSEGV, "overflow", overflow)
235DO_ERROR (X86_TRAP_BR, SIGSEGV, "bounds", bounds)
236DO_ERROR_INFO(X86_TRAP_UD, SIGILL, "invalid opcode", invalid_op)
237DO_ERROR (X86_TRAP_OLD_MF, SIGFPE, "coprocessor segment overrun", coprocessor_segment_overrun)
238DO_ERROR (X86_TRAP_TS, SIGSEGV, "invalid TSS", invalid_TSS)
239DO_ERROR (X86_TRAP_NP, SIGBUS, "segment not present", segment_not_present)
240#ifdef CONFIG_X86_32 234#ifdef CONFIG_X86_32
241DO_ERROR (X86_TRAP_SS, SIGBUS, "stack segment", stack_segment) 235DO_ERROR(X86_TRAP_SS, SIGBUS, "stack segment", stack_segment)
242#endif 236#endif
243DO_ERROR_INFO(X86_TRAP_AC, SIGBUS, "alignment check", alignment_check) 237DO_ERROR(X86_TRAP_AC, SIGBUS, "alignment check", alignment_check)
244 238
245#ifdef CONFIG_X86_64 239#ifdef CONFIG_X86_64
246/* Runs on IST stack */ 240/* Runs on IST stack */