Loading arch/mips/kernel/traps.c +10 −4 Original line number Diff line number Diff line Loading @@ -669,8 +669,6 @@ asmlinkage void do_bp(struct pt_regs *regs) unsigned int opcode, bcode; siginfo_t info; die_if_kernel("Break instruction in kernel code", regs); if (get_user(opcode, (unsigned int __user *) exception_epc(regs))) goto out_sigsegv; Loading @@ -693,6 +691,7 @@ asmlinkage void do_bp(struct pt_regs *regs) switch (bcode) { case BRK_OVERFLOW << 10: case BRK_DIVZERO << 10: die_if_kernel("Break instruction in kernel code", regs); if (bcode == (BRK_DIVZERO << 10)) info.si_code = FPE_INTDIV; else Loading @@ -702,7 +701,11 @@ asmlinkage void do_bp(struct pt_regs *regs) info.si_addr = (void __user *) regs->cp0_epc; force_sig_info(SIGFPE, &info, current); break; case BRK_BUG: die("Kernel bug detected", regs); break; default: die_if_kernel("Break instruction in kernel code", regs); force_sig(SIGTRAP, current); } Loading @@ -715,8 +718,6 @@ asmlinkage void do_tr(struct pt_regs *regs) unsigned int opcode, tcode = 0; siginfo_t info; die_if_kernel("Trap instruction in kernel code", regs); if (get_user(opcode, (unsigned int __user *) exception_epc(regs))) goto out_sigsegv; Loading @@ -733,6 +734,7 @@ asmlinkage void do_tr(struct pt_regs *regs) switch (tcode) { case BRK_OVERFLOW: case BRK_DIVZERO: die_if_kernel("Trap instruction in kernel code", regs); if (tcode == BRK_DIVZERO) info.si_code = FPE_INTDIV; else Loading @@ -742,7 +744,11 @@ asmlinkage void do_tr(struct pt_regs *regs) info.si_addr = (void __user *) regs->cp0_epc; force_sig_info(SIGFPE, &info, current); break; case BRK_BUG: die("Kernel bug detected", regs); break; default: die_if_kernel("Trap instruction in kernel code", regs); force_sig(SIGTRAP, current); } Loading include/asm-mips/bug.h +12 −0 Original line number Diff line number Diff line #ifndef __ASM_BUG_H #define __ASM_BUG_H #include <asm/sgidefs.h> #ifdef CONFIG_BUG Loading @@ -13,6 +14,17 @@ do { \ #define HAVE_ARCH_BUG #if (_MIPS_ISA > _MIPS_ISA_MIPS1) #define BUG_ON(condition) \ do { \ __asm__ __volatile__("tne $0, %0" : : "r" (condition)); \ } while (0) #define HAVE_ARCH_BUG_ON #endif /* _MIPS_ISA > _MIPS_ISA_MIPS1 */ #endif #include <asm-generic/bug.h> Loading include/asm-mips/ptrace.h +0 −2 Original line number Diff line number Diff line Loading @@ -80,8 +80,6 @@ struct pt_regs { #define instruction_pointer(regs) ((regs)->cp0_epc) #define profile_pc(regs) instruction_pointer(regs) extern void show_regs(struct pt_regs *); extern asmlinkage void do_syscall_trace(struct pt_regs *regs, int entryexit); #endif Loading Loading
arch/mips/kernel/traps.c +10 −4 Original line number Diff line number Diff line Loading @@ -669,8 +669,6 @@ asmlinkage void do_bp(struct pt_regs *regs) unsigned int opcode, bcode; siginfo_t info; die_if_kernel("Break instruction in kernel code", regs); if (get_user(opcode, (unsigned int __user *) exception_epc(regs))) goto out_sigsegv; Loading @@ -693,6 +691,7 @@ asmlinkage void do_bp(struct pt_regs *regs) switch (bcode) { case BRK_OVERFLOW << 10: case BRK_DIVZERO << 10: die_if_kernel("Break instruction in kernel code", regs); if (bcode == (BRK_DIVZERO << 10)) info.si_code = FPE_INTDIV; else Loading @@ -702,7 +701,11 @@ asmlinkage void do_bp(struct pt_regs *regs) info.si_addr = (void __user *) regs->cp0_epc; force_sig_info(SIGFPE, &info, current); break; case BRK_BUG: die("Kernel bug detected", regs); break; default: die_if_kernel("Break instruction in kernel code", regs); force_sig(SIGTRAP, current); } Loading @@ -715,8 +718,6 @@ asmlinkage void do_tr(struct pt_regs *regs) unsigned int opcode, tcode = 0; siginfo_t info; die_if_kernel("Trap instruction in kernel code", regs); if (get_user(opcode, (unsigned int __user *) exception_epc(regs))) goto out_sigsegv; Loading @@ -733,6 +734,7 @@ asmlinkage void do_tr(struct pt_regs *regs) switch (tcode) { case BRK_OVERFLOW: case BRK_DIVZERO: die_if_kernel("Trap instruction in kernel code", regs); if (tcode == BRK_DIVZERO) info.si_code = FPE_INTDIV; else Loading @@ -742,7 +744,11 @@ asmlinkage void do_tr(struct pt_regs *regs) info.si_addr = (void __user *) regs->cp0_epc; force_sig_info(SIGFPE, &info, current); break; case BRK_BUG: die("Kernel bug detected", regs); break; default: die_if_kernel("Trap instruction in kernel code", regs); force_sig(SIGTRAP, current); } Loading
include/asm-mips/bug.h +12 −0 Original line number Diff line number Diff line #ifndef __ASM_BUG_H #define __ASM_BUG_H #include <asm/sgidefs.h> #ifdef CONFIG_BUG Loading @@ -13,6 +14,17 @@ do { \ #define HAVE_ARCH_BUG #if (_MIPS_ISA > _MIPS_ISA_MIPS1) #define BUG_ON(condition) \ do { \ __asm__ __volatile__("tne $0, %0" : : "r" (condition)); \ } while (0) #define HAVE_ARCH_BUG_ON #endif /* _MIPS_ISA > _MIPS_ISA_MIPS1 */ #endif #include <asm-generic/bug.h> Loading
include/asm-mips/ptrace.h +0 −2 Original line number Diff line number Diff line Loading @@ -80,8 +80,6 @@ struct pt_regs { #define instruction_pointer(regs) ((regs)->cp0_epc) #define profile_pc(regs) instruction_pointer(regs) extern void show_regs(struct pt_regs *); extern asmlinkage void do_syscall_trace(struct pt_regs *regs, int entryexit); #endif Loading