The libc version is identical and built with same flags.
Checked on x86_64-linux-gnu.
old_pthread_cond_signal \
old_pthread_cond_timedwait \
old_pthread_cond_wait \
- pt-allocrtsig \
pt-cleanup \
pt-interp \
pt-longjmp \
__futex_abstimed_wait64;
__futex_abstimed_wait_cancelable64;
__libc_alloca_cutoff;
- __libc_allocate_rtsig_private;
- __libc_current_sigrtmax_private;
- __libc_current_sigrtmin_private;
__libc_dl_error_tsd;
__libc_pthread_init;
__lll_clocklock_elision;
}
GLIBC_2.1 {
- __libc_allocate_rtsig;
- __libc_current_sigrtmax;
- __libc_current_sigrtmin;
pthread_attr_getguardsize;
pthread_attr_getstackaddr;
pthread_attr_getstacksize;
+++ /dev/null
-/* Copyright (C) 2002-2021 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
-
- 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
- <https://www.gnu.org/licenses/>. */
-
-#include <signal.h>
-
-
-/* These are defined in libc. We want to have only one definition
- so we "forward" the calls. */
-extern int __libc_current_sigrtmin_private (void);
-extern int __libc_current_sigrtmax_private (void);
-extern int __libc_allocate_rtsig_private (int high);
-
-
-/* We reserve __SIGRTMIN for use as the cancellation signal and
- __SIGRTMIN+1 to handle setuid et.al. These signals are used
- internally. */
-int
-__libc_current_sigrtmin (void)
-{
- return __libc_current_sigrtmin_private ();
-}
-
-
-int
-__libc_current_sigrtmax (void)
-{
- return __libc_current_sigrtmax_private ();
-}
-
-
-int
-__libc_allocate_rtsig (int high)
-{
- return __libc_allocate_rtsig_private (high);
-}
<https://www.gnu.org/licenses/>. */
#include <signal.h>
-
-/* Another sysdeps file can #define this and then #include this file. */
-#ifndef RESERVED_SIGRT
-# define RESERVED_SIGRT 0
-#endif
+#include <internal-signals.h>
/* In these variables we keep track of the used variables. If the
platform does not support any real-time signals we will define the
#endif
}
libc_hidden_def (__libc_current_sigrtmin)
-strong_alias (__libc_current_sigrtmin, __libc_current_sigrtmin_private)
/* Return number of available real-time signal with lowest priority. */
int
#endif
}
libc_hidden_def (__libc_current_sigrtmax)
-strong_alias (__libc_current_sigrtmax, __libc_current_sigrtmax_private)
/* Allocate real-time signal with highest/lowest available
priority. Please note that we don't use a lock since we assume
return high ? current_rtmin++ : current_rtmax--;
#endif
}
-strong_alias (__libc_allocate_rtsig, __libc_allocate_rtsig_private)
#include <stdbool.h>
#include <stddef.h>
+/* How many signal numbers need to be reserved for libpthread's private uses
+ (SIGCANCEL and SIGSETXID). */
+#define RESERVED_SIGRT 0
+
static inline bool
__is_internal_signal (int sig)
{
+++ /dev/null
-/* Handle real-time signal allocation. NPTL version.
- Copyright (C) 2015-2021 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
- <https://www.gnu.org/licenses/>. */
-
-#include <signal.h>
-#include <nptl/pthreadP.h>
-
-#if SIGTIMER != SIGCANCEL
-# error "SIGTIMER and SIGCANCEL must be the same"
-#endif
-
-/* This tells the generic code (included below) how many signal
- numbers need to be reserved for libpthread's private uses
- (SIGCANCEL and SIGSETXID). */
-#define RESERVED_SIGRT 2
-
-#include <signal/allocrtsig.c>
GLIBC_2.17 _IO_funlockfile F
GLIBC_2.17 __errno_location F
GLIBC_2.17 __h_errno_location F
-GLIBC_2.17 __libc_allocate_rtsig F
-GLIBC_2.17 __libc_current_sigrtmax F
-GLIBC_2.17 __libc_current_sigrtmin F
GLIBC_2.17 __pthread_cleanup_routine F
GLIBC_2.17 __pthread_getspecific F
GLIBC_2.17 __pthread_key_create F
GLIBC_2.0 sem_trywait F
GLIBC_2.0 sem_wait F
GLIBC_2.0 siglongjmp F
-GLIBC_2.1 __libc_allocate_rtsig F
-GLIBC_2.1 __libc_current_sigrtmax F
-GLIBC_2.1 __libc_current_sigrtmin F
GLIBC_2.1 pthread_attr_getguardsize F
GLIBC_2.1 pthread_attr_getstackaddr F
GLIBC_2.1 pthread_attr_getstacksize F
GLIBC_2.32 _IO_funlockfile F
GLIBC_2.32 __errno_location F
GLIBC_2.32 __h_errno_location F
-GLIBC_2.32 __libc_allocate_rtsig F
-GLIBC_2.32 __libc_current_sigrtmax F
-GLIBC_2.32 __libc_current_sigrtmin F
GLIBC_2.32 __pthread_cleanup_routine F
GLIBC_2.32 __pthread_getspecific F
GLIBC_2.32 __pthread_key_create F
GLIBC_2.4 _IO_funlockfile F
GLIBC_2.4 __errno_location F
GLIBC_2.4 __h_errno_location F
-GLIBC_2.4 __libc_allocate_rtsig F
-GLIBC_2.4 __libc_current_sigrtmax F
-GLIBC_2.4 __libc_current_sigrtmin F
GLIBC_2.4 __pthread_cleanup_routine F
GLIBC_2.4 __pthread_getspecific F
GLIBC_2.4 __pthread_key_create F
GLIBC_2.4 _IO_funlockfile F
GLIBC_2.4 __errno_location F
GLIBC_2.4 __h_errno_location F
-GLIBC_2.4 __libc_allocate_rtsig F
-GLIBC_2.4 __libc_current_sigrtmax F
-GLIBC_2.4 __libc_current_sigrtmin F
GLIBC_2.4 __pthread_cleanup_routine F
GLIBC_2.4 __pthread_getspecific F
GLIBC_2.4 __pthread_key_create F
GLIBC_2.29 _IO_funlockfile F
GLIBC_2.29 __errno_location F
GLIBC_2.29 __h_errno_location F
-GLIBC_2.29 __libc_allocate_rtsig F
-GLIBC_2.29 __libc_current_sigrtmax F
-GLIBC_2.29 __libc_current_sigrtmin F
GLIBC_2.29 __pthread_cleanup_routine F
GLIBC_2.29 __pthread_getspecific F
GLIBC_2.29 __pthread_key_create F
GLIBC_2.2 _IO_funlockfile F
GLIBC_2.2 __errno_location F
GLIBC_2.2 __h_errno_location F
-GLIBC_2.2 __libc_allocate_rtsig F
-GLIBC_2.2 __libc_current_sigrtmax F
-GLIBC_2.2 __libc_current_sigrtmin F
GLIBC_2.2 __pthread_getspecific F
GLIBC_2.2 __pthread_key_create F
GLIBC_2.2 __pthread_mutex_destroy F
GLIBC_2.0 sem_trywait F
GLIBC_2.0 sem_wait F
GLIBC_2.0 siglongjmp F
-GLIBC_2.1 __libc_allocate_rtsig F
-GLIBC_2.1 __libc_current_sigrtmax F
-GLIBC_2.1 __libc_current_sigrtmin F
GLIBC_2.1 pthread_attr_getguardsize F
GLIBC_2.1 pthread_attr_getstackaddr F
GLIBC_2.1 pthread_attr_getstacksize F
GLIBC_2.2 _IO_funlockfile F
GLIBC_2.2 __errno_location F
GLIBC_2.2 __h_errno_location F
-GLIBC_2.2 __libc_allocate_rtsig F
-GLIBC_2.2 __libc_current_sigrtmax F
-GLIBC_2.2 __libc_current_sigrtmin F
GLIBC_2.2 __pthread_getspecific F
GLIBC_2.2 __pthread_key_create F
GLIBC_2.2 __pthread_mutex_destroy F
#define SIGSETXID (__SIGRTMIN + 1)
+/* How many signal numbers need to be reserved for libpthread's private uses
+ (SIGCANCEL and SIGSETXID). */
+#define RESERVED_SIGRT 2
+
+
/* Return is sig is used internally. */
static inline bool
__is_internal_signal (int sig)
GLIBC_2.4 _IO_funlockfile F
GLIBC_2.4 __errno_location F
GLIBC_2.4 __h_errno_location F
-GLIBC_2.4 __libc_allocate_rtsig F
-GLIBC_2.4 __libc_current_sigrtmax F
-GLIBC_2.4 __libc_current_sigrtmin F
GLIBC_2.4 __pthread_cleanup_routine F
GLIBC_2.4 __pthread_getspecific F
GLIBC_2.4 __pthread_key_create F
GLIBC_2.0 sem_trywait F
GLIBC_2.0 sem_wait F
GLIBC_2.0 siglongjmp F
-GLIBC_2.1 __libc_allocate_rtsig F
-GLIBC_2.1 __libc_current_sigrtmax F
-GLIBC_2.1 __libc_current_sigrtmin F
GLIBC_2.1 pthread_attr_getguardsize F
GLIBC_2.1 pthread_attr_getstackaddr F
GLIBC_2.1 pthread_attr_getstacksize F
GLIBC_2.18 _IO_funlockfile F
GLIBC_2.18 __errno_location F
GLIBC_2.18 __h_errno_location F
-GLIBC_2.18 __libc_allocate_rtsig F
-GLIBC_2.18 __libc_current_sigrtmax F
-GLIBC_2.18 __libc_current_sigrtmin F
GLIBC_2.18 __pthread_cleanup_routine F
GLIBC_2.18 __pthread_getspecific F
GLIBC_2.18 __pthread_key_create F
GLIBC_2.18 _IO_funlockfile F
GLIBC_2.18 __errno_location F
GLIBC_2.18 __h_errno_location F
-GLIBC_2.18 __libc_allocate_rtsig F
-GLIBC_2.18 __libc_current_sigrtmax F
-GLIBC_2.18 __libc_current_sigrtmin F
GLIBC_2.18 __pthread_cleanup_routine F
GLIBC_2.18 __pthread_getspecific F
GLIBC_2.18 __pthread_key_create F
GLIBC_2.12 pthread_setname_np F
GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
-GLIBC_2.2 __libc_allocate_rtsig F
-GLIBC_2.2 __libc_current_sigrtmax F
-GLIBC_2.2 __libc_current_sigrtmin F
GLIBC_2.2 __pthread_rwlock_destroy F
GLIBC_2.2 __pthread_rwlock_init F
GLIBC_2.2 __pthread_rwlock_rdlock F
GLIBC_2.12 pthread_setname_np F
GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
-GLIBC_2.2 __libc_allocate_rtsig F
-GLIBC_2.2 __libc_current_sigrtmax F
-GLIBC_2.2 __libc_current_sigrtmin F
GLIBC_2.2 __pthread_rwlock_destroy F
GLIBC_2.2 __pthread_rwlock_init F
GLIBC_2.2 __pthread_rwlock_rdlock F
GLIBC_2.21 _IO_funlockfile F
GLIBC_2.21 __errno_location F
GLIBC_2.21 __h_errno_location F
-GLIBC_2.21 __libc_allocate_rtsig F
-GLIBC_2.21 __libc_current_sigrtmax F
-GLIBC_2.21 __libc_current_sigrtmin F
GLIBC_2.21 __pthread_cleanup_routine F
GLIBC_2.21 __pthread_getspecific F
GLIBC_2.21 __pthread_key_create F
GLIBC_2.0 sem_trywait F
GLIBC_2.0 sem_wait F
GLIBC_2.0 siglongjmp F
-GLIBC_2.1 __libc_allocate_rtsig F
-GLIBC_2.1 __libc_current_sigrtmax F
-GLIBC_2.1 __libc_current_sigrtmin F
GLIBC_2.1 pthread_attr_getguardsize F
GLIBC_2.1 pthread_attr_getstackaddr F
GLIBC_2.1 pthread_attr_getstacksize F
GLIBC_2.3 _IO_funlockfile F
GLIBC_2.3 __errno_location F
GLIBC_2.3 __h_errno_location F
-GLIBC_2.3 __libc_allocate_rtsig F
-GLIBC_2.3 __libc_current_sigrtmax F
-GLIBC_2.3 __libc_current_sigrtmin F
GLIBC_2.3 __pthread_getspecific F
GLIBC_2.3 __pthread_key_create F
GLIBC_2.3 __pthread_mutex_destroy F
GLIBC_2.17 _IO_funlockfile F
GLIBC_2.17 __errno_location F
GLIBC_2.17 __h_errno_location F
-GLIBC_2.17 __libc_allocate_rtsig F
-GLIBC_2.17 __libc_current_sigrtmax F
-GLIBC_2.17 __libc_current_sigrtmin F
GLIBC_2.17 __pthread_cleanup_routine F
GLIBC_2.17 __pthread_getspecific F
GLIBC_2.17 __pthread_key_create F
GLIBC_2.33 _IO_funlockfile F
GLIBC_2.33 __errno_location F
GLIBC_2.33 __h_errno_location F
-GLIBC_2.33 __libc_allocate_rtsig F
-GLIBC_2.33 __libc_current_sigrtmax F
-GLIBC_2.33 __libc_current_sigrtmin F
GLIBC_2.33 __pthread_cleanup_routine F
GLIBC_2.33 __pthread_getspecific F
GLIBC_2.33 __pthread_key_create F
GLIBC_2.27 _IO_funlockfile F
GLIBC_2.27 __errno_location F
GLIBC_2.27 __h_errno_location F
-GLIBC_2.27 __libc_allocate_rtsig F
-GLIBC_2.27 __libc_current_sigrtmax F
-GLIBC_2.27 __libc_current_sigrtmin F
GLIBC_2.27 __pthread_cleanup_routine F
GLIBC_2.27 __pthread_getspecific F
GLIBC_2.27 __pthread_key_create F
GLIBC_2.0 sem_trywait F
GLIBC_2.0 sem_wait F
GLIBC_2.0 siglongjmp F
-GLIBC_2.1 __libc_allocate_rtsig F
-GLIBC_2.1 __libc_current_sigrtmax F
-GLIBC_2.1 __libc_current_sigrtmin F
GLIBC_2.1 pthread_attr_getguardsize F
GLIBC_2.1 pthread_attr_getstackaddr F
GLIBC_2.1 pthread_attr_getstacksize F
GLIBC_2.2 _IO_funlockfile F
GLIBC_2.2 __errno_location F
GLIBC_2.2 __h_errno_location F
-GLIBC_2.2 __libc_allocate_rtsig F
-GLIBC_2.2 __libc_current_sigrtmax F
-GLIBC_2.2 __libc_current_sigrtmin F
GLIBC_2.2 __pthread_getspecific F
GLIBC_2.2 __pthread_key_create F
GLIBC_2.2 __pthread_mutex_destroy F
GLIBC_2.2 _IO_funlockfile F
GLIBC_2.2 __errno_location F
GLIBC_2.2 __h_errno_location F
-GLIBC_2.2 __libc_allocate_rtsig F
-GLIBC_2.2 __libc_current_sigrtmax F
-GLIBC_2.2 __libc_current_sigrtmin F
GLIBC_2.2 __pthread_getspecific F
GLIBC_2.2 __pthread_key_create F
GLIBC_2.2 __pthread_mutex_destroy F
GLIBC_2.2 _IO_funlockfile F
GLIBC_2.2 __errno_location F
GLIBC_2.2 __h_errno_location F
-GLIBC_2.2 __libc_allocate_rtsig F
-GLIBC_2.2 __libc_current_sigrtmax F
-GLIBC_2.2 __libc_current_sigrtmin F
GLIBC_2.2 __pthread_getspecific F
GLIBC_2.2 __pthread_key_create F
GLIBC_2.2 __pthread_mutex_destroy F
GLIBC_2.0 sem_trywait F
GLIBC_2.0 sem_wait F
GLIBC_2.0 siglongjmp F
-GLIBC_2.1 __libc_allocate_rtsig F
-GLIBC_2.1 __libc_current_sigrtmax F
-GLIBC_2.1 __libc_current_sigrtmin F
GLIBC_2.1 pthread_attr_getguardsize F
GLIBC_2.1 pthread_attr_getstackaddr F
GLIBC_2.1 pthread_attr_getstacksize F
GLIBC_2.2 _IO_funlockfile F
GLIBC_2.2 __errno_location F
GLIBC_2.2 __h_errno_location F
-GLIBC_2.2 __libc_allocate_rtsig F
-GLIBC_2.2 __libc_current_sigrtmax F
-GLIBC_2.2 __libc_current_sigrtmin F
GLIBC_2.2 __pthread_getspecific F
GLIBC_2.2 __pthread_key_create F
GLIBC_2.2 __pthread_mutex_destroy F
GLIBC_2.2.5 _IO_funlockfile F
GLIBC_2.2.5 __errno_location F
GLIBC_2.2.5 __h_errno_location F
-GLIBC_2.2.5 __libc_allocate_rtsig F
-GLIBC_2.2.5 __libc_current_sigrtmax F
-GLIBC_2.2.5 __libc_current_sigrtmin F
GLIBC_2.2.5 __pthread_getspecific F
GLIBC_2.2.5 __pthread_key_create F
GLIBC_2.2.5 __pthread_mutex_destroy F
GLIBC_2.16 _IO_funlockfile F
GLIBC_2.16 __errno_location F
GLIBC_2.16 __h_errno_location F
-GLIBC_2.16 __libc_allocate_rtsig F
-GLIBC_2.16 __libc_current_sigrtmax F
-GLIBC_2.16 __libc_current_sigrtmin F
GLIBC_2.16 __pthread_cleanup_routine F
GLIBC_2.16 __pthread_getspecific F
GLIBC_2.16 __pthread_key_create F