| From foo@baz Sun Jun 17 12:07:34 CEST 2018 |
| From: Russell King <rmk+kernel@armlinux.org.uk> |
| Date: Fri, 13 Apr 2018 00:22:47 +0100 |
| Subject: ARM: fix kill( ,SIGFPE) breakage |
| |
| From: Russell King <rmk+kernel@armlinux.org.uk> |
| |
| [ Upstream commit 92d44a42af81e850a038c38278ff4f434b2871df ] |
| |
| Commit 7771c6645700 ("signal/arm: Document conflicts with SI_USER and |
| SIGFPE") broke the siginfo structure for userspace triggered signals, |
| causing the strace testsuite to regress. Fix this by eliminating |
| the FPE_FIXME definition (which is at the root of the breakage) and |
| use FPE_FLTINV instead for the case where the hardware appears to be |
| reporting nonsense. |
| |
| Fixes: 7771c6645700 ("signal/arm: Document conflicts with SI_USER and SIGFPE") |
| Suggested-by: Linus Torvalds <torvalds@linux-foundation.org> |
| Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk> |
| Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| arch/arm/include/uapi/asm/siginfo.h | 13 ------------- |
| arch/arm/vfp/vfpmodule.c | 2 +- |
| 2 files changed, 1 insertion(+), 14 deletions(-) |
| delete mode 100644 arch/arm/include/uapi/asm/siginfo.h |
| |
| --- a/arch/arm/include/uapi/asm/siginfo.h |
| +++ /dev/null |
| @@ -1,13 +0,0 @@ |
| -#ifndef __ASM_SIGINFO_H |
| -#define __ASM_SIGINFO_H |
| - |
| -#include <asm-generic/siginfo.h> |
| - |
| -/* |
| - * SIGFPE si_codes |
| - */ |
| -#ifdef __KERNEL__ |
| -#define FPE_FIXME 0 /* Broken dup of SI_USER */ |
| -#endif /* __KERNEL__ */ |
| - |
| -#endif |
| --- a/arch/arm/vfp/vfpmodule.c |
| +++ b/arch/arm/vfp/vfpmodule.c |
| @@ -257,7 +257,7 @@ static void vfp_raise_exceptions(u32 exc |
| |
| if (exceptions == VFP_EXCEPTION_ERROR) { |
| vfp_panic("unhandled bounce", inst); |
| - vfp_raise_sigfpe(FPE_FIXME, regs); |
| + vfp_raise_sigfpe(FPE_FLTINV, regs); |
| return; |
| } |
| |