signal/alpha: Replace FPE_FIXME with FPE_FLTUNK
authorEric W. Biederman <ebiederm@xmission.com>
Tue, 17 Apr 2018 21:04:57 +0000 (16:04 -0500)
committerEric W. Biederman <ebiederm@xmission.com>
Wed, 25 Apr 2018 15:40:54 +0000 (10:40 -0500)
Using an si_code of 0 that aliases with SI_USER is clearly the wrong
thing todo, and causes problems in interesting ways.

The newly defined FPE_FLTUNK semantically appears to fit the bill so
use it instead.

Given recent experience in this area odds are it will not break
anything.  Fixing it removes a hazard to kernel maintenance.

Cc: Helge Deller <deller@gmx.de>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Cc: Matt Turner <mattst88@gmail.com>
Cc: linux-alpha@vger.kernel.org
History Tree: https://git.kernel.org/pub/scm/linux/kernel/git/tglx/history.git
Fixes: 0a635c7a84cf ("Fill in siginfo_t.")
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
arch/alpha/include/uapi/asm/siginfo.h
arch/alpha/kernel/osf_sys.c
arch/alpha/kernel/traps.c

index 0cf3b52..3ebbb1e 100644 (file)
@@ -7,13 +7,6 @@
 
 #include <asm-generic/siginfo.h>
 
-/*
- * SIGFPE si_codes
- */
-#ifdef __KERNEL__
-#define FPE_FIXME      0       /* Broken dup of SI_USER */
-#endif /* __KERNEL__ */
-
 /*
  * SIGTRAP si_codes
  */
index f5f1549..bb36191 100644 (file)
@@ -872,7 +872,7 @@ SYSCALL_DEFINE5(osf_setsysinfo, unsigned long, op, void __user *, buffer,
                fex = (exc >> IEEE_STATUS_TO_EXCSUM_SHIFT) & swcr;
                if (fex) {
                        siginfo_t info;
-                       int si_code = FPE_FIXME;
+                       int si_code = FPE_FLTUNK;
 
                        if (fex & IEEE_TRAP_ENABLE_DNO) si_code = FPE_FLTUND;
                        if (fex & IEEE_TRAP_ENABLE_INE) si_code = FPE_FLTRES;
index 9163676..422b676 100644 (file)
@@ -328,7 +328,7 @@ do_entIF(unsigned long type, struct pt_regs *regs)
                        break;
                case GEN_ROPRAND:
                        signo = SIGFPE;
-                       code = FPE_FIXME;
+                       code = FPE_FLTUNK;
                        break;
 
                case GEN_DECOVF: