summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@xmission.com>2017-09-05 15:42:47 +0200
committerEric W. Biederman <ebiederm@xmission.com>2017-09-05 15:42:47 +0200
commit076a9bcacfc7ccbc2b3fdf3bd490718f6b182419 (patch)
tree1d0d794f0f8c6ebe211196eecefc62a4f4e5c60b
parentIntroduce v3 namespaced file capabilities (diff)
parentmips/signal: In force_fcr31_sig return in the impossible case (diff)
downloadlinux-076a9bcacfc7ccbc2b3fdf3bd490718f6b182419.tar.xz
linux-076a9bcacfc7ccbc2b3fdf3bd490718f6b182419.zip
signal/mips: Remove FPE_FIXME usage from mips
Ralf Baechle recently merged a change to stop explicitly handling this case on mips, as the case is impossible. Unfortunately when the code in force_fcr31_sig to not use siginfo but a simple interger variable gcc starts warning about an unitialized variable. So add a return statement so gcc knows the code never attempts to use the impossible value. Cc: Ralf Baechle <ralf@linux-mips.org> Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
-rw-r--r--arch/mips/include/uapi/asm/siginfo.h7
-rw-r--r--arch/mips/kernel/traps.c2
2 files changed, 1 insertions, 8 deletions
diff --git a/arch/mips/include/uapi/asm/siginfo.h b/arch/mips/include/uapi/asm/siginfo.h
index 22a86d84a504..cf6113bbcb98 100644
--- a/arch/mips/include/uapi/asm/siginfo.h
+++ b/arch/mips/include/uapi/asm/siginfo.h
@@ -123,11 +123,4 @@ typedef struct siginfo {
#define SI_TIMER -3 /* sent by timer expiration */
#define SI_MESGQ -4 /* sent by real time mesq state change */
-/*
- * SIGFPE si_codes
- */
-#ifdef __KERNEL__
-#define FPE_FIXME 0 /* Broken dup of SI_USER */
-#endif /* __KERNEL__ */
-
#endif /* _UAPI_ASM_SIGINFO_H */
diff --git a/arch/mips/kernel/traps.c b/arch/mips/kernel/traps.c
index 6c9cca9c5341..2bf414993347 100644
--- a/arch/mips/kernel/traps.c
+++ b/arch/mips/kernel/traps.c
@@ -735,7 +735,7 @@ void force_fcr31_sig(unsigned long fcr31, void __user *fault_addr,
else if (fcr31 & FPU_CSR_INE_X)
si.si_code = FPE_FLTRES;
else
- si.si_code = FPE_FIXME;
+ return; /* Broken hardware? */
force_sig_info(SIGFPE, &si, tsk);
}