aboutsummaryrefslogtreecommitdiffstats
path: root/arch/unicore32/kernel/traps.c
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@xmission.com>2018-04-19 18:13:51 -0500
committerEric W. Biederman <ebiederm@xmission.com>2018-09-27 22:11:28 +0200
commitccebcb1f5f3a85d0d23a23dfa611b28ae1e0f824 (patch)
tree4edc3cc071f33fed0fa9403d5d87cc4b3c836c47 /arch/unicore32/kernel/traps.c
parentsignal/unicore32: Use send_sig_fault where appropriate (diff)
downloadlinux-dev-ccebcb1f5f3a85d0d23a23dfa611b28ae1e0f824.tar.xz
linux-dev-ccebcb1f5f3a85d0d23a23dfa611b28ae1e0f824.zip
signal/unicore32: Generate siginfo in ucs32_notify_die
Pass the signal number, and the signal code, and the faulting address into uc32_notify_die so the callers do not need to generate a struct siginfo. In ucs32_ntoify_die use the newly passed in information to call force_sig_fault to generate the siginfo and send the error. This simplifies the code making the chances of bugs much less likely. Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
Diffstat (limited to 'arch/unicore32/kernel/traps.c')
-rw-r--r--arch/unicore32/kernel/traps.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/unicore32/kernel/traps.c b/arch/unicore32/kernel/traps.c
index c4ac6043ebb0..fb376d83e043 100644
--- a/arch/unicore32/kernel/traps.c
+++ b/arch/unicore32/kernel/traps.c
@@ -241,13 +241,14 @@ void die(const char *str, struct pt_regs *regs, int err)
}
void uc32_notify_die(const char *str, struct pt_regs *regs,
- struct siginfo *info, unsigned long err, unsigned long trap)
+ int sig, int code, void __user *addr,
+ unsigned long err, unsigned long trap)
{
if (user_mode(regs)) {
current->thread.error_code = err;
current->thread.trap_no = trap;
- force_sig_info(info->si_signo, info, current);
+ force_sig_fault(sig, code, addr, current);
} else
die(str, regs, err);
}