From: Eric W. Biederman Date: Tue, 24 Apr 2018 15:26:11 +0000 (-0500) Subject: signal/riscv: Replace do_trap_siginfo with force_sig_fault X-Git-Tag: Ubuntu-5.2.0-15.16~4319^2~14 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=7ff3a7621ddaa4e2186b732ba4b48f9a6bb88719;p=mirror_ubuntu-eoan-kernel.git signal/riscv: Replace do_trap_siginfo with force_sig_fault The function force_sig_fault is just the generic version of do_trap_siginfo with a (void __user *) instead of an unsigned long parameter for the address. So just use force_sig_fault to simplify the code. Cc: Palmer Dabbelt Cc: Albert Ou Cc: linux-riscv@lists.infradead.org Suggested-by: Christoph Hellwig Signed-off-by: "Eric W. Biederman" --- diff --git a/arch/riscv/kernel/traps.c b/arch/riscv/kernel/traps.c index 3087940008f4..b99d9dd21fd0 100644 --- a/arch/riscv/kernel/traps.c +++ b/arch/riscv/kernel/traps.c @@ -63,12 +63,6 @@ void die(struct pt_regs *regs, const char *str) do_exit(SIGSEGV); } -static inline void do_trap_siginfo(int signo, int code, - unsigned long addr, struct task_struct *tsk) -{ - force_sig_fault(signo, code, (void __user *)addr, tsk); -} - void do_trap(struct pt_regs *regs, int signo, int code, unsigned long addr, struct task_struct *tsk) { @@ -81,7 +75,7 @@ void do_trap(struct pt_regs *regs, int signo, int code, show_regs(regs); } - do_trap_siginfo(signo, code, addr, tsk); + force_sig_fault(signo, code, (void __user *)addr, tsk); } static void do_trap_error(struct pt_regs *regs, int signo, int code, @@ -143,7 +137,7 @@ asmlinkage void do_trap_break(struct pt_regs *regs) } #endif /* CONFIG_GENERIC_BUG */ - do_trap_siginfo(SIGTRAP, TRAP_BRKPT, regs->sepc, current); + force_sig_fault(SIGTRAP, TRAP_BRKPT, (void __user *)(regs->sepc), current); regs->sepc += 0x4; }