r6316 - in glibc-package/trunk/debian: . patches patches/hppa
Author: aurel32
Date: 2014-10-27 21:34:59 +0000 (Mon, 27 Oct 2014)
New Revision: 6316
Added:
glibc-package/trunk/debian/patches/hppa/cvs-sigrtmin.diff
Modified:
glibc-package/trunk/debian/changelog
glibc-package/trunk/debian/patches/series
Log:
patches/hppa/cvs-sigrtmin.diff: backport patch from upstream to change
__SIGRTMIN to match other architectures. Closes: #766605.
Modified: glibc-package/trunk/debian/changelog
===================================================================
--- glibc-package/trunk/debian/changelog 2014-10-27 20:39:02 UTC (rev 6315)
+++ glibc-package/trunk/debian/changelog 2014-10-27 21:34:59 UTC (rev 6316)
@@ -3,6 +3,8 @@
[ Aurelien Jarno ]
* kfreebsd/local-fbtl.diff: update to revision 5677 (from glibc-bsd).
Workarounds a kfreebsd 9.0 to 10.1 ABI break. Closes: #740509.
+ * patches/hppa/cvs-sigrtmin.diff: backport patch from upstream to change
+ __SIGRTMIN to match other architectures. Closes: #766605.
-- Aurelien Jarno <aurel32@debian.org> Mon, 27 Oct 2014 21:36:32 +0100
Added: glibc-package/trunk/debian/patches/hppa/cvs-sigrtmin.diff
===================================================================
--- glibc-package/trunk/debian/patches/hppa/cvs-sigrtmin.diff (rev 0)
+++ glibc-package/trunk/debian/patches/hppa/cvs-sigrtmin.diff 2014-10-27 21:34:59 UTC (rev 6316)
@@ -0,0 +1,80 @@
+>From 13d845549e41823e6658122dcf268154bcbbcfde Mon Sep 17 00:00:00 2001
+From: Carlos O'Donell <carlos@redhat.com>
+Date: Thu, 23 Oct 2014 23:14:12 -0400
+Subject: [PATCH] hppa: Make __SIGRTMIN 32 (ABI break).
+
+In the Linux kernel version 3.17 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.
+
+Upstream kernel commit is 1f25df2eff5b25f52c139d3ff31bc883eee9a0ab.
+
+Signed-off-by: Carlos O'Donell <carlos@systemhalted.org>
+Signed-off-by: Helge Deller <deller@gmx.de>
+
+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.
+---
+
+--- a/ports/sysdeps/unix/sysv/linux/hppa/bits/signum.h
++++ b/ports/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. */
Modified: glibc-package/trunk/debian/patches/series
===================================================================
--- glibc-package/trunk/debian/patches/series 2014-10-27 20:39:02 UTC (rev 6315)
+++ glibc-package/trunk/debian/patches/series 2014-10-27 21:34:59 UTC (rev 6316)
@@ -79,6 +79,7 @@
hppa/local-fpu.diff
hppa/local-shmlba.diff
hppa/local-pthread_spin_unlock.diff
+hppa/cvs-sigrtmin.diff
hurd-i386/cvs-tcbhead_t.diff
hurd-i386/local-enable-ldconfig.diff
Reply to: