aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mips/include/uapi/asm/siginfo.h
diff options
context:
space:
mode:
authorDave Hansen <dave@sr71.net>2016-02-17 10:17:03 -0800
committerIngo Molnar <mingo@kernel.org>2016-02-18 09:32:42 +0100
commitb376cd0256f86db3078409dc51963b315c7843d8 (patch)
treef48625165d884329e42a751fbaf3a8ba854a85e6 /arch/mips/include/uapi/asm/siginfo.h
parentx86/mm/pkeys: Pass VMA down in to fault signal generation code (diff)
downloadlinux-dev-b376cd0256f86db3078409dc51963b315c7843d8.tar.xz
linux-dev-b376cd0256f86db3078409dc51963b315c7843d8.zip
signals, ia64, mips: Update arch-specific siginfos with pkeys field
ia64 and mips have separate definitions for siginfo from the generic one. Patch them to have the pkey fields. Note that this is exactly what we did for MPX as well. [ This fixes a compile error that Ingo was hitting with MIPS when the x86 pkeys patch set is applied. ] Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com> Cc: Dave Hansen <dave@sr71.net> Cc: Fenghua Yu <fenghua.yu@intel.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Petr Malat <oss@malat.biz> Cc: Ralf Baechle <ralf@linux-mips.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Tony Luck <tony.luck@intel.com> Cc: linux-ia64@vger.kernel.org Cc: linux-kernel@vger.kernel.org Cc: linux-mips@linux-mips.org Cc: linux-mm@kvack.org Link: http://lkml.kernel.org/r/20160217181703.E99B6656@viggo.jf.intel.com Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'arch/mips/include/uapi/asm/siginfo.h')
-rw-r--r--arch/mips/include/uapi/asm/siginfo.h13
1 files changed, 9 insertions, 4 deletions
diff --git a/arch/mips/include/uapi/asm/siginfo.h b/arch/mips/include/uapi/asm/siginfo.h
index 2cb7fdead570..6f4edf0d794c 100644
--- a/arch/mips/include/uapi/asm/siginfo.h
+++ b/arch/mips/include/uapi/asm/siginfo.h
@@ -86,10 +86,15 @@ typedef struct siginfo {
int _trapno; /* TRAP # which caused the signal */
#endif
short _addr_lsb;
- struct {
- void __user *_lower;
- void __user *_upper;
- } _addr_bnd;
+ union {
+ /* used when si_code=SEGV_BNDERR */
+ struct {
+ void __user *_lower;
+ void __user *_upper;
+ } _addr_bnd;
+ /* used when si_code=SEGV_PKUERR */
+ u64 _pkey;
+ };
} _sigfault;
/* SIGPOLL, SIGXFSZ (To do ...) */