diff options
author | Helge Deller <deller@gmx.de> | 2018-01-13 19:32:43 -0600 |
---|---|---|
committer | Helge Deller <deller@gmx.de> | 2018-04-11 11:40:35 +0200 |
commit | 75abf64287cab73546382a4fa7fa2f4e3516efeb (patch) | |
tree | 48c47c25880b404b21f2dcf05594858d766be48e /arch/parisc/kernel | |
parent | b284d4d5a6785f8cd07eda2646a95782373cd01e (diff) | |
download | op-kernel-dev-75abf64287cab73546382a4fa7fa2f4e3516efeb.zip op-kernel-dev-75abf64287cab73546382a4fa7fa2f4e3516efeb.tar.gz |
parisc/signal: Add FPE_CONDTRAP for conditional trap handling
Posix and common sense requires that SI_USER not be a signal specific
si_code. Thus add a new FPE_CONDTRAP si_code for conditional traps.
Signed-off-by: Helge Deller <deller@gmx.de>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>
Diffstat (limited to 'arch/parisc/kernel')
-rw-r--r-- | arch/parisc/kernel/traps.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/arch/parisc/kernel/traps.c b/arch/parisc/kernel/traps.c index c919e6c..68e671a 100644 --- a/arch/parisc/kernel/traps.c +++ b/arch/parisc/kernel/traps.c @@ -627,9 +627,10 @@ void notrace handle_interruption(int code, struct pt_regs *regs) on condition */ if(user_mode(regs)){ si.si_signo = SIGFPE; - /* Set to zero, and let the userspace app figure it out from - the insn pointed to by si_addr */ - si.si_code = FPE_FIXME; + /* Let userspace app figure it out from the insn pointed + * to by si_addr. + */ + si.si_code = FPE_CONDTRAP; si.si_addr = (void __user *) regs->iaoq[0]; force_sig_info(SIGFPE, &si, current); return; |