about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog19
-rw-r--r--sysdeps/unix/sysv/linux/bits/siginfo-consts.h31
-rw-r--r--sysdeps/unix/sysv/linux/ia64/bits/siginfo-consts-arch.h13
3 files changed, 46 insertions, 17 deletions
diff --git a/ChangeLog b/ChangeLog
index 99a560f233..1532d35b94 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,22 @@
+2018-09-17  Joseph Myers  <joseph@codesourcery.com>
+
+	[BZ #21286]
+	* sysdeps/unix/sysv/linux/bits/siginfo-consts.h (SI_DETHREAD): New
+	constant.
+	[__USE_XOPEN_EXTENDED || __USE_XOPEN2K8] (ILL_BADIADDR): Likewise.
+	[__USE_XOPEN_EXTENDED || __USE_XOPEN2K8] (FPE_FLTUNK): Likewise.
+	[__USE_XOPEN_EXTENDED || __USE_XOPEN2K8] (FPE_CONDTRAP): Likewise.
+	[__USE_XOPEN_EXTENDED || __USE_XOPEN2K8] (SEGV_ACCADI): Likewise.
+	[__USE_XOPEN_EXTENDED || __USE_XOPEN2K8] (SEGV_ADIDERR): Likewise.
+	[__USE_XOPEN_EXTENDED || __USE_XOPEN2K8] (SEGV_ADIPERR): Likewise.
+	[__USE_XOPEN_EXTENDED] (TRAP_BRANCH): Likewise.
+	[__USE_XOPEN_EXTENDED] (TRAP_HWBKPT): Likewise.
+	[__USE_XOPEN_EXTENDED] (TRAP_UNK): Likweise.
+	* sysdeps/unix/sysv/linux/ia64/bits/siginfo-consts-arch.h
+	(ILL_BADIADDR): Remove constant.
+	(TRAP_BRANCH): Likewise.
+	(TRAP_HWBKPT): Likewise.
+
 2018-09-14  Joseph Myers  <joseph@codesourcery.com>
 
 	[BZ #23656]
diff --git a/sysdeps/unix/sysv/linux/bits/siginfo-consts.h b/sysdeps/unix/sysv/linux/bits/siginfo-consts.h
index 193bd9c471..d69d27d922 100644
--- a/sysdeps/unix/sysv/linux/bits/siginfo-consts.h
+++ b/sysdeps/unix/sysv/linux/bits/siginfo-consts.h
@@ -35,7 +35,9 @@
 enum
 {
   SI_ASYNCNL = -60,		/* Sent by asynch name lookup completion.  */
-  SI_TKILL = -6,		/* Sent by tkill.  */
+  SI_DETHREAD = -7,		/* Sent by execve killing subsidiary
+				   threads.  */
+  SI_TKILL,			/* Sent by tkill.  */
   SI_SIGIO,			/* Sent by queued SIGIO. */
 #if __SI_ASYNCIO_AFTER_SIGIO
   SI_ASYNCIO,			/* Sent by AIO completion.  */
@@ -51,6 +53,7 @@ enum
   SI_KERNEL = 0x80		/* Send by kernel.  */
 
 #define SI_ASYNCNL	SI_ASYNCNL
+#define SI_DETHREAD	SI_DETHREAD
 #define SI_TKILL	SI_TKILL
 #define SI_SIGIO	SI_SIGIO
 #define SI_ASYNCIO	SI_ASYNCIO
@@ -81,8 +84,10 @@ enum
 #  define ILL_PRVREG	ILL_PRVREG
   ILL_COPROC,			/* Coprocessor error.  */
 #  define ILL_COPROC	ILL_COPROC
-  ILL_BADSTK			/* Internal stack error.  */
+  ILL_BADSTK,			/* Internal stack error.  */
 #  define ILL_BADSTK	ILL_BADSTK
+  ILL_BADIADDR			/* Unimplemented instruction address.  */
+#  define ILL_BADIADDR ILL_BADIADDR
 };
 
 /* `si_code' values for SIGFPE signal.  */
@@ -102,8 +107,12 @@ enum
 #  define FPE_FLTRES	FPE_FLTRES
   FPE_FLTINV,			/* Floating point invalid operation.  */
 #  define FPE_FLTINV	FPE_FLTINV
-  FPE_FLTSUB			/* Subscript out of range.  */
+  FPE_FLTSUB,			/* Subscript out of range.  */
 #  define FPE_FLTSUB	FPE_FLTSUB
+  FPE_FLTUNK = 14,		/* Undiagnosed floating-point exception.  */
+#  define FPE_FLTUNK	FPE_FLTUNK
+  FPE_CONDTRAP			/* Trap on condition.  */
+#  define FPE_CONDTRAP	FPE_CONDTRAP
 };
 
 /* `si_code' values for SIGSEGV signal.  */
@@ -115,8 +124,14 @@ enum
 #  define SEGV_ACCERR	SEGV_ACCERR
   SEGV_BNDERR,			/* Bounds checking failure.  */
 #  define SEGV_BNDERR	SEGV_BNDERR
-  SEGV_PKUERR			/* Protection key checking failure.  */
+  SEGV_PKUERR,			/* Protection key checking failure.  */
 #  define SEGV_PKUERR	SEGV_PKUERR
+  SEGV_ACCADI,			/* ADI not enabled for mapped object.  */
+#  define SEGV_ACCADI	SEGV_ACCADI
+  SEGV_ADIDERR,			/* Disrupting MCD error.  */
+#  define SEGV_ADIDERR	SEGV_ADIDERR
+  SEGV_ADIPERR			/* Precise MCD exception.  */
+#  define SEGV_ADIPERR	SEGV_ADIPERR
 };
 
 /* `si_code' values for SIGBUS signal.  */
@@ -141,8 +156,14 @@ enum
 {
   TRAP_BRKPT = 1,		/* Process breakpoint.  */
 #  define TRAP_BRKPT	TRAP_BRKPT
-  TRAP_TRACE			/* Process trace trap.  */
+  TRAP_TRACE,			/* Process trace trap.  */
 #  define TRAP_TRACE	TRAP_TRACE
+  TRAP_BRANCH,			/* Process taken branch trap.  */
+#  define TRAP_BRANCH	TRAP_BRANCH
+  TRAP_HWBKPT,			/* Hardware breakpoint/watchpoint.  */
+#  define TRAP_HWBKPT	TRAP_HWBKPT
+  TRAP_UNK			/* Undiagnosed trap.  */
+#  define TRAP_UNK	TRAP_UNK
 };
 # endif
 
diff --git a/sysdeps/unix/sysv/linux/ia64/bits/siginfo-consts-arch.h b/sysdeps/unix/sysv/linux/ia64/bits/siginfo-consts-arch.h
index 4c5c4da516..5ef8af4ac7 100644
--- a/sysdeps/unix/sysv/linux/ia64/bits/siginfo-consts-arch.h
+++ b/sysdeps/unix/sysv/linux/ia64/bits/siginfo-consts-arch.h
@@ -5,9 +5,7 @@
 /* `si_code' values for SIGILL signal.  */
 enum
 {
-  ILL_BADIADDR = ILL_BADSTK + 1, /* Unimplemented instruction address. */
-#define ILL_BADIADDR ILL_BADIADDR
-  ILL_BREAK
+  ILL_BREAK = ILL_BADIADDR + 1
 #define ILL_BREAK ILL_BREAK
 };
 
@@ -33,13 +31,4 @@ enum
 #define SEGV_PSTKOVF SEGV_PSTKOVF
 };
 
-/* `si_code' values for SIGTRAP signal.  */
-enum
-{
-  TRAP_BRANCH = TRAP_TRACE + 1,
-#define TRAP_BRANCH TRAP_BRANCH
-  TRAP_HWBKPT
-#define TRAP_HWBKPT TRAP_HWBKPT
-};
-
 #endif