aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@xmission.com>2018-04-16 14:35:45 -0400
committerEric W. Biederman <ebiederm@xmission.com>2018-09-27 15:57:40 -0400
commitb059454846141c2daacffe8a99366ef31cc1f23f (patch)
tree7cc60b138f9658063d4a7a83735866bd21d21c02
parent3ee6a4498724a464ba9882007c4aef8ec01eba10 (diff)
signal/arm: Use send_sig_fault where appropriate
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
-rw-r--r--arch/arm/vfp/vfpmodule.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/arch/arm/vfp/vfpmodule.c b/arch/arm/vfp/vfpmodule.c
index dc7e6b50ef67..aa96cc5c9fe9 100644
--- a/arch/arm/vfp/vfpmodule.c
+++ b/arch/arm/vfp/vfpmodule.c
@@ -216,13 +216,6 @@ static struct notifier_block vfp_notifier_block = {
216 */ 216 */
217static void vfp_raise_sigfpe(unsigned int sicode, struct pt_regs *regs) 217static void vfp_raise_sigfpe(unsigned int sicode, struct pt_regs *regs)
218{ 218{
219 siginfo_t info;
220
221 clear_siginfo(&info);
222 info.si_signo = SIGFPE;
223 info.si_code = sicode;
224 info.si_addr = (void __user *)(instruction_pointer(regs) - 4);
225
226 /* 219 /*
227 * This is the same as NWFPE, because it's not clear what 220 * This is the same as NWFPE, because it's not clear what
228 * this is used for 221 * this is used for
@@ -230,7 +223,9 @@ static void vfp_raise_sigfpe(unsigned int sicode, struct pt_regs *regs)
230 current->thread.error_code = 0; 223 current->thread.error_code = 0;
231 current->thread.trap_no = 6; 224 current->thread.trap_no = 6;
232 225
233 send_sig_info(SIGFPE, &info, current); 226 send_sig_fault(SIGFPE, sicode,
227 (void __user *)(instruction_pointer(regs) - 4),
228 current);
234} 229}
235 230
236static void vfp_panic(char *reason, u32 inst) 231static void vfp_panic(char *reason, u32 inst)