summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--NEWS2
-rw-r--r--sysdeps/unix/sysv/linux/hppa/bits/signum.h22
3 files changed, 24 insertions, 8 deletions
diff --git a/ChangeLog b/ChangeLog
index 1d05492cd6..8afd75d50e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2014-10-23 Carlos O'Donell <carlos@systemhalted.org>
+ Helge Deller <deller@gmx.de>
+
+ [BZ #17508]
+ * sysdeps/unix/sysv/linux/hppa/bits/signum.h: Remove SIGEMT.
+ Define SIGSTKFLT as 7. Define SIGSYS as 31. Define SIGXCPU as 12.
+ Remove SIGLOST. Define SIGXFSZ as 30. Define __SIGRTMIN as 32.
+
2014-10-23 Joseph Myers <joseph@codesourcery.com>
[BZ #14132]
diff --git a/NEWS b/NEWS
index 5850c4aa6e..13be62e8c7 100644
--- a/NEWS
+++ b/NEWS
@@ -10,7 +10,7 @@ Version 2.21
* The following bugs are resolved with this release:
6652, 12926, 14171, 15884, 17266, 17363, 17370, 17371, 17411, 17460,
- 17485.
+ 17485, 17508.
Version 2.20
diff --git a/sysdeps/unix/sysv/linux/hppa/bits/signum.h b/sysdeps/unix/sysv/linux/hppa/bits/signum.h
index 7f935c52a0..b05fee7609 100644
--- a/sysdeps/unix/sysv/linux/hppa/bits/signum.h
+++ b/sysdeps/unix/sysv/linux/hppa/bits/signum.h
@@ -36,12 +36,12 @@
#define SIGTRAP 5 /* Trace trap (POSIX). */
#define SIGABRT 6 /* Abort (ANSI). */
#define SIGIOT 6 /* IOT trap (4.2 BSD). */
-#define SIGEMT 7
+#define SIGSTKFLT 7 /* Stack fault. */
#define SIGFPE 8 /* Floating-point exception (ANSI). */
#define SIGKILL 9 /* Kill, unblockable (POSIX). */
#define SIGBUS 10 /* BUS error (4.2 BSD). */
#define SIGSEGV 11 /* Segmentation violation (ANSI). */
-#define SIGSYS 12 /* Bad system call. */
+#define SIGXCPU 12 /* CPU limit exceeded (4.2 BSD). */
#define SIGPIPE 13 /* Broken pipe (POSIX). */
#define SIGALRM 14 /* Alarm clock (POSIX). */
#define SIGTERM 15 /* Termination (ANSI). */
@@ -61,11 +61,9 @@
#define SIGTTIN 27 /* Background read from tty (POSIX). */
#define SIGTTOU 28 /* Background write to tty (POSIX). */
#define SIGURG 29 /* Urgent condition on socket (4.2 BSD). */
-#define SIGLOST 30 /* Operating System Has Lost (HP/UX). */
+#define SIGXFSZ 30 /* File size limit exceeded (4.2 BSD). */
+#define SIGSYS 31 /* Bad system call. */
#define SIGUNUSED 31
-#define SIGXCPU 33 /* CPU limit exceeded (4.2 BSD). */
-#define SIGXFSZ 34 /* File size limit exceeded (4.2 BSD). */
-#define SIGSTKFLT 36 /* Stack fault. */
#define _NSIG 65 /* Biggest signal number + 1
(including real-time signals). */
@@ -75,7 +73,17 @@
/* These are the hard limits of the kernel. These values should not be
used directly at user level. */
-#define __SIGRTMIN 37
+/* In the Linux kernel version 3.17, and glibc 2.21, the signal numbers
+ were rearranged in order to make hppa like every other arch. Previously
+ we started __SIGRTMIN at 37, and that meant several pieces of important
+ software, including systemd, would fail to build. To support systemd we
+ removed SIGEMT and SIGLOST, and rearranged the others according to
+ expected values. This is technically an ABI incompatible change, but
+ because zero applications use SIGSTKFLT, SIGXCPU, SIGXFSZ and SIGSYS
+ nothing broke. Nothing uses SIGEMT and SIGLOST, and they were present
+ for HPUX compatibility which is no longer supported. Thus because
+ nothing breaks we don't do any compatibility work here. */
+#define __SIGRTMIN 32 /* Kernel > 3.17. */
#define __SIGRTMAX (_NSIG - 1)
#endif /* <signal.h> included. */