diff options
author | Eric W. Biederman <ebiederm@xmission.com> | 2019-05-23 12:04:24 -0400 |
---|---|---|
committer | Eric W. Biederman <ebiederm@xmission.com> | 2019-05-29 10:31:43 -0400 |
commit | 2e1661d2673667d886cd40ad9f414cb6db48d8da (patch) | |
tree | 5a2c32eb8a5c575bfb5c7013f5d9d427f5c06c34 /arch/mips/kernel/traps.c | |
parent | 91ca180dbdd687d45fe4aab055b02d29c91b90df (diff) |
signal: Remove the task parameter from force_sig_fault
As synchronous exceptions really only make sense against the current
task (otherwise how are you synchronous) remove the task parameter
from from force_sig_fault to make it explicit that is what is going
on.
The two known exceptions that deliver a synchronous exception to a
stopped ptraced task have already been changed to
force_sig_fault_to_task.
The callers have been changed with the following emacs regular expression
(with obvious variations on the architectures that take more arguments)
to avoid typos:
force_sig_fault[(]\([^,]+\)[,]\([^,]+\)[,]\([^,]+\)[,]\W+current[)]
->
force_sig_fault(\1,\2,\3)
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
Diffstat (limited to 'arch/mips/kernel/traps.c')
-rw-r--r-- | arch/mips/kernel/traps.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/arch/mips/kernel/traps.c b/arch/mips/kernel/traps.c index 62df48b6fb46..be4a7b25269c 100644 --- a/arch/mips/kernel/traps.c +++ b/arch/mips/kernel/traps.c | |||
@@ -705,7 +705,7 @@ asmlinkage void do_ov(struct pt_regs *regs) | |||
705 | prev_state = exception_enter(); | 705 | prev_state = exception_enter(); |
706 | die_if_kernel("Integer overflow", regs); | 706 | die_if_kernel("Integer overflow", regs); |
707 | 707 | ||
708 | force_sig_fault(SIGFPE, FPE_INTOVF, (void __user *)regs->cp0_epc, current); | 708 | force_sig_fault(SIGFPE, FPE_INTOVF, (void __user *)regs->cp0_epc); |
709 | exception_exit(prev_state); | 709 | exception_exit(prev_state); |
710 | } | 710 | } |
711 | 711 | ||
@@ -750,7 +750,7 @@ int process_fpemu_return(int sig, void __user *fault_addr, unsigned long fcr31) | |||
750 | return 1; | 750 | return 1; |
751 | 751 | ||
752 | case SIGBUS: | 752 | case SIGBUS: |
753 | force_sig_fault(SIGBUS, BUS_ADRERR, fault_addr, current); | 753 | force_sig_fault(SIGBUS, BUS_ADRERR, fault_addr); |
754 | return 1; | 754 | return 1; |
755 | 755 | ||
756 | case SIGSEGV: | 756 | case SIGSEGV: |
@@ -761,7 +761,7 @@ int process_fpemu_return(int sig, void __user *fault_addr, unsigned long fcr31) | |||
761 | else | 761 | else |
762 | si_code = SEGV_MAPERR; | 762 | si_code = SEGV_MAPERR; |
763 | up_read(¤t->mm->mmap_sem); | 763 | up_read(¤t->mm->mmap_sem); |
764 | force_sig_fault(SIGSEGV, si_code, fault_addr, current); | 764 | force_sig_fault(SIGSEGV, si_code, fault_addr); |
765 | return 1; | 765 | return 1; |
766 | 766 | ||
767 | default: | 767 | default: |
@@ -943,7 +943,7 @@ void do_trap_or_bp(struct pt_regs *regs, unsigned int code, int si_code, | |||
943 | die_if_kernel(b, regs); | 943 | die_if_kernel(b, regs); |
944 | force_sig_fault(SIGFPE, | 944 | force_sig_fault(SIGFPE, |
945 | code == BRK_DIVZERO ? FPE_INTDIV : FPE_INTOVF, | 945 | code == BRK_DIVZERO ? FPE_INTDIV : FPE_INTOVF, |
946 | (void __user *) regs->cp0_epc, current); | 946 | (void __user *) regs->cp0_epc); |
947 | break; | 947 | break; |
948 | case BRK_BUG: | 948 | case BRK_BUG: |
949 | die_if_kernel("Kernel bug detected", regs); | 949 | die_if_kernel("Kernel bug detected", regs); |
@@ -968,7 +968,7 @@ void do_trap_or_bp(struct pt_regs *regs, unsigned int code, int si_code, | |||
968 | scnprintf(b, sizeof(b), "%s instruction in kernel code", str); | 968 | scnprintf(b, sizeof(b), "%s instruction in kernel code", str); |
969 | die_if_kernel(b, regs); | 969 | die_if_kernel(b, regs); |
970 | if (si_code) { | 970 | if (si_code) { |
971 | force_sig_fault(SIGTRAP, si_code, NULL, current); | 971 | force_sig_fault(SIGTRAP, si_code, NULL); |
972 | } else { | 972 | } else { |
973 | force_sig(SIGTRAP); | 973 | force_sig(SIGTRAP); |
974 | } | 974 | } |
@@ -1521,7 +1521,7 @@ asmlinkage void do_watch(struct pt_regs *regs) | |||
1521 | if (test_tsk_thread_flag(current, TIF_LOAD_WATCH)) { | 1521 | if (test_tsk_thread_flag(current, TIF_LOAD_WATCH)) { |
1522 | mips_read_watch_registers(); | 1522 | mips_read_watch_registers(); |
1523 | local_irq_enable(); | 1523 | local_irq_enable(); |
1524 | force_sig_fault(SIGTRAP, TRAP_HWBKPT, NULL, current); | 1524 | force_sig_fault(SIGTRAP, TRAP_HWBKPT, NULL); |
1525 | } else { | 1525 | } else { |
1526 | mips_clear_watch_registers(); | 1526 | mips_clear_watch_registers(); |
1527 | local_irq_enable(); | 1527 | local_irq_enable(); |