diff options
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | nptl/pthreadP.h | 18 | ||||
-rw-r--r-- | sysdeps/nptl/nptl-signals.h | 22 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/nptl-signals.h | 33 |
4 files changed, 64 insertions, 16 deletions
@@ -1,3 +1,10 @@ +2014-07-31 Roland McGrath <roland@hack.frob.com> + + * nptl/pthreadP.h (SIGCANCEL, SIGTIMER, SIGSETXID, __xidcmd): Moved ... + * sysdeps/unix/sysv/linux/nptl-signals.h: ... to this new file. + * sysdeps/nptl/nptl-signals.h: New file. + * nptl/pthreadP.h: Include <nptl-signals.h>. + 2014-07-31 Stefan Liebler <stli@linux.vnet.ibm.com> * sysdeps/s390/s390-64/utf16-utf32-z9.c diff --git a/nptl/pthreadP.h b/nptl/pthreadP.h index 6069be9..4226473 100644 --- a/nptl/pthreadP.h +++ b/nptl/pthreadP.h @@ -32,6 +32,8 @@ #include <atomic.h> #include <kernel-features.h> #include <errno.h> +#include <nptl-signals.h> + /* Atomic operations on TLS memory. */ #ifndef THREAD_ATOMIC_CMPXCHG_VAL @@ -314,22 +316,6 @@ __do_cancel (void) # define LIBC_CANCEL_HANDLED() /* Nothing. */ #endif -/* The signal used for asynchronous cancelation. */ -#define SIGCANCEL __SIGRTMIN - - -/* Signal needed for the kernel-supported POSIX timer implementation. - We can reuse the cancellation signal since we can distinguish - cancellation from timer expirations. */ -#define SIGTIMER SIGCANCEL - - -/* Signal used to implement the setuid et.al. functions. */ -#define SIGSETXID (__SIGRTMIN + 1) - -/* Used to communicate with signal handler. */ -extern struct xid_command *__xidcmd attribute_hidden; - /* Internal prototypes. */ diff --git a/sysdeps/nptl/nptl-signals.h b/sysdeps/nptl/nptl-signals.h new file mode 100644 index 0000000..38a0608 --- /dev/null +++ b/sysdeps/nptl/nptl-signals.h @@ -0,0 +1,22 @@ +/* Special use of signals in NPTL internals. Stub version. + Copyright (C) 2014 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <http://www.gnu.org/licenses/>. */ + +/* This file can define the macros SIGCANCEL, SIGTIMER, and SIGSETXID to + signal numbers reserved by libpthread for those internal purposes. + + Note that some code presumes SIGTIMER is the same as SIGCANCEL. */ diff --git a/sysdeps/unix/sysv/linux/nptl-signals.h b/sysdeps/unix/sysv/linux/nptl-signals.h new file mode 100644 index 0000000..aaa9a6a --- /dev/null +++ b/sysdeps/unix/sysv/linux/nptl-signals.h @@ -0,0 +1,33 @@ +/* Special use of signals in NPTL internals. Linux version. + Copyright (C) 2014 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <http://www.gnu.org/licenses/>. */ + +/* The signal used for asynchronous cancelation. */ +#define SIGCANCEL __SIGRTMIN + + +/* Signal needed for the kernel-supported POSIX timer implementation. + We can reuse the cancellation signal since we can distinguish + cancellation from timer expirations. */ +#define SIGTIMER SIGCANCEL + + +/* Signal used to implement the setuid et.al. functions. */ +#define SIGSETXID (__SIGRTMIN + 1) + +/* Used to communicate with signal handler. */ +extern struct xid_command *__xidcmd attribute_hidden; |