nptl: Move legacy cancelation handling into libc as compat symbols

This affects _pthread_cleanup_pop, _pthread_cleanup_pop_restore,
_pthread_cleanup_push, _pthread_cleanup_push_defer.  The symbols
have been moved using scripts/move-symbol-to-libc.py.

No new symbol versions are added because the symbols are turned into
compatibility symbols at the same time.

__pthread_cleanup_pop and __pthread_cleanup_push are added as
GLIBC_PRIVATE symbols because they are also used internally, for
glibc's own cancellation handling.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
This commit is contained in:
Florian Weimer 2021-04-21 19:49:50 +02:00
parent f79f206581
commit 1f2e5bfe48
68 changed files with 188 additions and 146 deletions

View File

@ -30,6 +30,8 @@ extra-libs-others := $(extra-libs)
routines = \
alloca_cutoff \
cleanup_compat \
cleanup_defer_compat \
cleanup_routine \
elision-conf \
elision-lock \
@ -84,9 +86,7 @@ static-only-routines = pthread_atfork
libpthread-routines = \
cancellation \
cleanup \
cleanup_compat \
cleanup_defer \
cleanup_defer_compat \
events \
flockfile \
ftrylockfile \
@ -293,7 +293,6 @@ tests = tst-attr2 tst-attr3 tst-default-attr \
tst-tsd3 tst-tsd4 \
tst-cancel4_1 tst-cancel4_2 \
tst-cancel7 tst-cancel17 tst-cancel24 \
tst-cleanup4 \
tst-signal3 \
tst-exec4 tst-exec5 \
tst-stack2 tst-stack3 tst-stack4 \
@ -381,7 +380,7 @@ endif
LDFLAGS-pthread.so = -Wl,--enable-new-dtags,-z,nodelete,-z,initfirst
tests += tst-cancelx7 tst-cancelx17 tst-cleanupx4
tests += tst-cancelx7 tst-cancelx17
ifeq ($(build-shared),yes)
tests += tst-compat-forwarder tst-audit-threads
@ -401,6 +400,14 @@ extra-test-objs += $(addsuffix .os,$(strip $(modules-names))) \
tst-cleanup4aux.o tst-cleanupx4aux.o
test-extras += tst-cleanup4aux tst-cleanupx4aux
# This test exercises compat symbols removed in glibc 2.34.
ifdef have-GLIBC_2.33
tests += tst-cleanup4
ifeq ($(build-shared),yes)
tests += tst-cleanupx4
endif
endif
tst-tls3mod.so-no-z-defs = yes
tst-tls5mod.so-no-z-defs = yes
tst-tls5moda.so-no-z-defs = yes

View File

@ -1,5 +1,9 @@
libc {
GLIBC_2.0 {
_pthread_cleanup_pop;
_pthread_cleanup_pop_restore;
_pthread_cleanup_push;
_pthread_cleanup_push_defer;
pthread_attr_destroy;
pthread_attr_getdetachstate;
pthread_attr_getinheritsched;
@ -102,6 +106,8 @@ libc {
__pthread_attr_init;
__pthread_attr_setaffinity_np;
__pthread_attr_setsigmask_internal;
__pthread_cleanup_pop;
__pthread_cleanup_push;
__pthread_cond_destroy; # Used by the C11 threads.
__pthread_cond_init; # Used by the C11 threads.
__pthread_force_elision;
@ -131,10 +137,6 @@ libpthread {
__pthread_once;
__pthread_setspecific;
_exit;
_pthread_cleanup_pop;
_pthread_cleanup_pop_restore;
_pthread_cleanup_push;
_pthread_cleanup_push_defer;
flockfile;
ftrylockfile;
funlockfile;

View File

@ -16,12 +16,12 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
#include <shlib-compat.h>
#include <stdlib.h>
#include "pthreadP.h"
void
_pthread_cleanup_push (struct _pthread_cleanup_buffer *buffer,
__pthread_cleanup_push (struct _pthread_cleanup_buffer *buffer,
void (*routine) (void *), void *arg)
{
struct pthread *self = THREAD_SELF;
@ -32,11 +32,10 @@ _pthread_cleanup_push (struct _pthread_cleanup_buffer *buffer,
THREAD_SETMEM (self, cleanup, buffer);
}
strong_alias (_pthread_cleanup_push, __pthread_cleanup_push)
libc_hidden_def (__pthread_cleanup_push)
void
_pthread_cleanup_pop (struct _pthread_cleanup_buffer *buffer, int execute)
__pthread_cleanup_pop (struct _pthread_cleanup_buffer *buffer, int execute)
{
struct pthread *self __attribute ((unused)) = THREAD_SELF;
@ -47,4 +46,11 @@ _pthread_cleanup_pop (struct _pthread_cleanup_buffer *buffer, int execute)
if (execute)
buffer->__routine (buffer->__arg);
}
strong_alias (_pthread_cleanup_pop, __pthread_cleanup_pop)
libc_hidden_def (__pthread_cleanup_pop)
#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_0, GLIBC_2_34)
compat_symbol (libpthread, __pthread_cleanup_push, _pthread_cleanup_push,
GLIBC_2_0);
compat_symbol (libpthread, __pthread_cleanup_pop, _pthread_cleanup_pop,
GLIBC_2_0);
#endif

View File

@ -16,10 +16,13 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
#include "pthreadP.h"
#include <libc-lock.h>
#include <shlib-compat.h>
void
#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_0, GLIBC_2_34)
# include "pthreadP.h"
# include <libc-lock.h>
void attribute_compat_text_section
_pthread_cleanup_push_defer (struct _pthread_cleanup_buffer *buffer,
void (*routine) (void *), void *arg)
{
@ -27,10 +30,10 @@ _pthread_cleanup_push_defer (struct _pthread_cleanup_buffer *buffer,
buffer->__arg = arg;
__libc_cleanup_push_defer (buffer);
}
strong_alias (_pthread_cleanup_push_defer, __pthread_cleanup_push_defer)
compat_symbol (libpthread, _pthread_cleanup_push_defer,
_pthread_cleanup_push_defer, GLIBC_2_0);
void
void attribute_compat_text_section
_pthread_cleanup_pop_restore (struct _pthread_cleanup_buffer *buffer,
int execute)
{
@ -41,4 +44,7 @@ _pthread_cleanup_pop_restore (struct _pthread_cleanup_buffer *buffer,
if (execute)
buffer->__routine (buffer->__arg);
}
strong_alias (_pthread_cleanup_pop_restore, __pthread_cleanup_pop_restore)
compat_symbol (libpthread, _pthread_cleanup_pop_restore,
_pthread_cleanup_pop_restore, GLIBC_2_0);
#endif /* OTHER_SHLIB_COMPAT */

View File

@ -591,11 +591,10 @@ libc_hidden_proto (__pthread_attr_setsigmask_internal)
extern __typeof (pthread_attr_getsigmask_np) __pthread_attr_getsigmask_np;
libc_hidden_proto (__pthread_attr_getsigmask_np)
#if IS_IN (libpthread)
/* Special versions which use non-exported functions. */
extern void __pthread_cleanup_push (struct _pthread_cleanup_buffer *buffer,
void (*routine) (void *), void *arg)
attribute_hidden;
void (*routine) (void *), void *arg);
libc_hidden_proto (__pthread_cleanup_push)
/* Replace cleanup macros defined in <pthread.h> with internal
versions that don't depend on unwind info and better support
@ -606,12 +605,13 @@ extern void __pthread_cleanup_push (struct _pthread_cleanup_buffer *buffer,
__pthread_cleanup_push (&_buffer, (routine), (arg));
extern void __pthread_cleanup_pop (struct _pthread_cleanup_buffer *buffer,
int execute) attribute_hidden;
int execute);
libc_hidden_proto (__pthread_cleanup_pop)
# undef pthread_cleanup_pop
# define pthread_cleanup_pop(execute) \
__pthread_cleanup_pop (&_buffer, (execute)); }
# if defined __EXCEPTIONS && !defined __cplusplus
#if defined __EXCEPTIONS && !defined __cplusplus
/* Structure to hold the cleanup handler information. */
struct __pthread_cleanup_combined_frame
{
@ -652,7 +652,7 @@ __pthread_cleanup_combined_routine_voidptr (void *__arg)
}
}
# define pthread_cleanup_combined_push(routine, arg) \
# define pthread_cleanup_combined_push(routine, arg) \
do { \
void (*__cancel_routine) (void *) = (routine); \
struct __pthread_cleanup_combined_frame __clframe \
@ -663,15 +663,14 @@ __pthread_cleanup_combined_routine_voidptr (void *__arg)
__pthread_cleanup_combined_routine_voidptr, \
&__clframe);
# define pthread_cleanup_combined_pop(execute) \
# define pthread_cleanup_combined_pop(execute) \
__pthread_cleanup_pop (&__clframe.__buffer, 0); \
__clframe.__do_it = 0; \
if (execute) \
__cancel_routine (__clframe.__cancel_arg); \
} while (0)
# endif
#endif
#endif /* __EXCEPTIONS && !defined __cplusplus */
extern void __pthread_cleanup_push_defer (struct _pthread_cleanup_buffer *buffer,
void (*routine) (void *), void *arg);

View File

@ -17,6 +17,7 @@
<https://www.gnu.org/licenses/>. */
#include <pthread.h>
#include <shlib-compat.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
@ -25,8 +26,12 @@
extern void _pthread_cleanup_push (struct _pthread_cleanup_buffer *__buffer,
void (*__routine) (void *),
void *__arg);
compat_symbol_reference (libpthread, _pthread_cleanup_push,
_pthread_cleanup_push, GLIBC_2_0);
extern void _pthread_cleanup_pop (struct _pthread_cleanup_buffer *__buffer,
int __execute);
compat_symbol_reference (libpthread, _pthread_cleanup_pop,
_pthread_cleanup_pop, GLIBC_2_0);
static int fds[2];
static pthread_barrier_t b2;

View File

@ -17,6 +17,7 @@
<https://www.gnu.org/licenses/>. */
#include <pthread.h>
#include <shlib-compat.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
@ -24,8 +25,12 @@
extern void _pthread_cleanup_push (struct _pthread_cleanup_buffer *__buffer,
void (*__routine) (void *),
void *__arg);
compat_symbol_reference (libpthread, _pthread_cleanup_push,
_pthread_cleanup_push, GLIBC_2_0);
extern void _pthread_cleanup_pop (struct _pthread_cleanup_buffer *__buffer,
int __execute);
compat_symbol_reference (libpthread, _pthread_cleanup_pop,
_pthread_cleanup_pop, GLIBC_2_0);
extern void clh (void *arg);
extern void fn0 (void);

View File

@ -539,6 +539,10 @@ GLIBC_2.17 _obstack_begin_1 F
GLIBC_2.17 _obstack_free F
GLIBC_2.17 _obstack_memory_used F
GLIBC_2.17 _obstack_newchunk F
GLIBC_2.17 _pthread_cleanup_pop F
GLIBC_2.17 _pthread_cleanup_pop_restore F
GLIBC_2.17 _pthread_cleanup_push F
GLIBC_2.17 _pthread_cleanup_push_defer F
GLIBC_2.17 _res D 0x238
GLIBC_2.17 _res_hconf D 0x48
GLIBC_2.17 _rpc_dtablesize F

View File

@ -28,10 +28,6 @@ GLIBC_2.17 __pthread_unregister_cancel F
GLIBC_2.17 __pthread_unregister_cancel_restore F
GLIBC_2.17 __pthread_unwind_next F
GLIBC_2.17 __res_state F
GLIBC_2.17 _pthread_cleanup_pop F
GLIBC_2.17 _pthread_cleanup_pop_restore F
GLIBC_2.17 _pthread_cleanup_push F
GLIBC_2.17 _pthread_cleanup_push_defer F
GLIBC_2.17 flockfile F
GLIBC_2.17 ftrylockfile F
GLIBC_2.17 funlockfile F

View File

@ -277,6 +277,10 @@ GLIBC_2.0 _obstack_newchunk F
GLIBC_2.0 _outb F
GLIBC_2.0 _outl F
GLIBC_2.0 _outw F
GLIBC_2.0 _pthread_cleanup_pop F
GLIBC_2.0 _pthread_cleanup_pop_restore F
GLIBC_2.0 _pthread_cleanup_push F
GLIBC_2.0 _pthread_cleanup_push_defer F
GLIBC_2.0 _res D 0x238
GLIBC_2.0 _rpc_dtablesize F
GLIBC_2.0 _seterr_reply F

View File

@ -15,10 +15,6 @@ GLIBC_2.0 __pthread_mutexattr_init F
GLIBC_2.0 __pthread_mutexattr_settype F
GLIBC_2.0 __pthread_once F
GLIBC_2.0 __pthread_setspecific F
GLIBC_2.0 _pthread_cleanup_pop F
GLIBC_2.0 _pthread_cleanup_pop_restore F
GLIBC_2.0 _pthread_cleanup_push F
GLIBC_2.0 _pthread_cleanup_push_defer F
GLIBC_2.0 flockfile F
GLIBC_2.0 ftrylockfile F
GLIBC_2.0 funlockfile F

View File

@ -506,6 +506,10 @@ GLIBC_2.32 _obstack_begin_1 F
GLIBC_2.32 _obstack_free F
GLIBC_2.32 _obstack_memory_used F
GLIBC_2.32 _obstack_newchunk F
GLIBC_2.32 _pthread_cleanup_pop F
GLIBC_2.32 _pthread_cleanup_pop_restore F
GLIBC_2.32 _pthread_cleanup_push F
GLIBC_2.32 _pthread_cleanup_push_defer F
GLIBC_2.32 _res D 0x200
GLIBC_2.32 _res_hconf D 0x30
GLIBC_2.32 _setjmp F

View File

@ -28,10 +28,6 @@ GLIBC_2.32 __pthread_unregister_cancel F
GLIBC_2.32 __pthread_unregister_cancel_restore F
GLIBC_2.32 __pthread_unwind_next F
GLIBC_2.32 __res_state F
GLIBC_2.32 _pthread_cleanup_pop F
GLIBC_2.32 _pthread_cleanup_pop_restore F
GLIBC_2.32 _pthread_cleanup_push F
GLIBC_2.32 _pthread_cleanup_push_defer F
GLIBC_2.32 call_once F
GLIBC_2.32 cnd_broadcast F
GLIBC_2.32 cnd_destroy F

View File

@ -684,6 +684,10 @@ GLIBC_2.4 _obstack_begin_1 F
GLIBC_2.4 _obstack_free F
GLIBC_2.4 _obstack_memory_used F
GLIBC_2.4 _obstack_newchunk F
GLIBC_2.4 _pthread_cleanup_pop F
GLIBC_2.4 _pthread_cleanup_pop_restore F
GLIBC_2.4 _pthread_cleanup_push F
GLIBC_2.4 _pthread_cleanup_push_defer F
GLIBC_2.4 _res D 0x200
GLIBC_2.4 _res_hconf D 0x30
GLIBC_2.4 _rpc_dtablesize F

View File

@ -62,10 +62,6 @@ GLIBC_2.4 __pthread_unregister_cancel F
GLIBC_2.4 __pthread_unregister_cancel_restore F
GLIBC_2.4 __pthread_unwind_next F
GLIBC_2.4 __res_state F
GLIBC_2.4 _pthread_cleanup_pop F
GLIBC_2.4 _pthread_cleanup_pop_restore F
GLIBC_2.4 _pthread_cleanup_push F
GLIBC_2.4 _pthread_cleanup_push_defer F
GLIBC_2.4 flockfile F
GLIBC_2.4 ftrylockfile F
GLIBC_2.4 funlockfile F

View File

@ -681,6 +681,10 @@ GLIBC_2.4 _obstack_begin_1 F
GLIBC_2.4 _obstack_free F
GLIBC_2.4 _obstack_memory_used F
GLIBC_2.4 _obstack_newchunk F
GLIBC_2.4 _pthread_cleanup_pop F
GLIBC_2.4 _pthread_cleanup_pop_restore F
GLIBC_2.4 _pthread_cleanup_push F
GLIBC_2.4 _pthread_cleanup_push_defer F
GLIBC_2.4 _res D 0x200
GLIBC_2.4 _res_hconf D 0x30
GLIBC_2.4 _rpc_dtablesize F

View File

@ -62,10 +62,6 @@ GLIBC_2.4 __pthread_unregister_cancel F
GLIBC_2.4 __pthread_unregister_cancel_restore F
GLIBC_2.4 __pthread_unwind_next F
GLIBC_2.4 __res_state F
GLIBC_2.4 _pthread_cleanup_pop F
GLIBC_2.4 _pthread_cleanup_pop_restore F
GLIBC_2.4 _pthread_cleanup_push F
GLIBC_2.4 _pthread_cleanup_push_defer F
GLIBC_2.4 flockfile F
GLIBC_2.4 ftrylockfile F
GLIBC_2.4 funlockfile F

View File

@ -515,6 +515,10 @@ GLIBC_2.29 _obstack_begin_1 F
GLIBC_2.29 _obstack_free F
GLIBC_2.29 _obstack_memory_used F
GLIBC_2.29 _obstack_newchunk F
GLIBC_2.29 _pthread_cleanup_pop F
GLIBC_2.29 _pthread_cleanup_pop_restore F
GLIBC_2.29 _pthread_cleanup_push F
GLIBC_2.29 _pthread_cleanup_push_defer F
GLIBC_2.29 _res D 0x200
GLIBC_2.29 _res_hconf D 0x30
GLIBC_2.29 _rpc_dtablesize F

View File

@ -28,10 +28,6 @@ GLIBC_2.29 __pthread_unregister_cancel F
GLIBC_2.29 __pthread_unregister_cancel_restore F
GLIBC_2.29 __pthread_unwind_next F
GLIBC_2.29 __res_state F
GLIBC_2.29 _pthread_cleanup_pop F
GLIBC_2.29 _pthread_cleanup_pop_restore F
GLIBC_2.29 _pthread_cleanup_push F
GLIBC_2.29 _pthread_cleanup_push_defer F
GLIBC_2.29 call_once F
GLIBC_2.29 cnd_broadcast F
GLIBC_2.29 cnd_destroy F

View File

@ -502,6 +502,10 @@ GLIBC_2.2 _obstack_begin_1 F
GLIBC_2.2 _obstack_free F
GLIBC_2.2 _obstack_memory_used F
GLIBC_2.2 _obstack_newchunk F
GLIBC_2.2 _pthread_cleanup_pop F
GLIBC_2.2 _pthread_cleanup_pop_restore F
GLIBC_2.2 _pthread_cleanup_push F
GLIBC_2.2 _pthread_cleanup_push_defer F
GLIBC_2.2 _res D 0x200
GLIBC_2.2 _res_hconf D 0x30
GLIBC_2.2 _rpc_dtablesize F

View File

@ -30,10 +30,6 @@ GLIBC_2.2 __pthread_rwlock_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pthread_setspecific F
GLIBC_2.2 __res_state F
GLIBC_2.2 _pthread_cleanup_pop F
GLIBC_2.2 _pthread_cleanup_pop_restore F
GLIBC_2.2 _pthread_cleanup_push F
GLIBC_2.2 _pthread_cleanup_push_defer F
GLIBC_2.2 flockfile F
GLIBC_2.2 ftrylockfile F
GLIBC_2.2 funlockfile F

View File

@ -265,6 +265,10 @@ GLIBC_2.0 _obstack_begin_1 F
GLIBC_2.0 _obstack_free F
GLIBC_2.0 _obstack_memory_used F
GLIBC_2.0 _obstack_newchunk F
GLIBC_2.0 _pthread_cleanup_pop F
GLIBC_2.0 _pthread_cleanup_pop_restore F
GLIBC_2.0 _pthread_cleanup_push F
GLIBC_2.0 _pthread_cleanup_push_defer F
GLIBC_2.0 _res D 0x200
GLIBC_2.0 _rpc_dtablesize F
GLIBC_2.0 _seterr_reply F

View File

@ -15,10 +15,6 @@ GLIBC_2.0 __pthread_mutexattr_init F
GLIBC_2.0 __pthread_mutexattr_settype F
GLIBC_2.0 __pthread_once F
GLIBC_2.0 __pthread_setspecific F
GLIBC_2.0 _pthread_cleanup_pop F
GLIBC_2.0 _pthread_cleanup_pop_restore F
GLIBC_2.0 _pthread_cleanup_push F
GLIBC_2.0 _pthread_cleanup_push_defer F
GLIBC_2.0 flockfile F
GLIBC_2.0 ftrylockfile F
GLIBC_2.0 funlockfile F

View File

@ -514,6 +514,10 @@ GLIBC_2.2 _obstack_newchunk F
GLIBC_2.2 _outb F
GLIBC_2.2 _outl F
GLIBC_2.2 _outw F
GLIBC_2.2 _pthread_cleanup_pop F
GLIBC_2.2 _pthread_cleanup_pop_restore F
GLIBC_2.2 _pthread_cleanup_push F
GLIBC_2.2 _pthread_cleanup_push_defer F
GLIBC_2.2 _res D 0x238
GLIBC_2.2 _res_hconf D 0x48
GLIBC_2.2 _rpc_dtablesize F

View File

@ -30,10 +30,6 @@ GLIBC_2.2 __pthread_rwlock_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pthread_setspecific F
GLIBC_2.2 __res_state F
GLIBC_2.2 _pthread_cleanup_pop F
GLIBC_2.2 _pthread_cleanup_pop_restore F
GLIBC_2.2 _pthread_cleanup_push F
GLIBC_2.2 _pthread_cleanup_push_defer F
GLIBC_2.2 flockfile F
GLIBC_2.2 ftrylockfile F
GLIBC_2.2 funlockfile F

View File

@ -672,6 +672,10 @@ GLIBC_2.4 _obstack_begin_1 F
GLIBC_2.4 _obstack_free F
GLIBC_2.4 _obstack_memory_used F
GLIBC_2.4 _obstack_newchunk F
GLIBC_2.4 _pthread_cleanup_pop F
GLIBC_2.4 _pthread_cleanup_pop_restore F
GLIBC_2.4 _pthread_cleanup_push F
GLIBC_2.4 _pthread_cleanup_push_defer F
GLIBC_2.4 _res D 0x1fe
GLIBC_2.4 _res_hconf D 0x30
GLIBC_2.4 _rpc_dtablesize F

View File

@ -62,10 +62,6 @@ GLIBC_2.4 __pthread_unregister_cancel F
GLIBC_2.4 __pthread_unregister_cancel_restore F
GLIBC_2.4 __pthread_unwind_next F
GLIBC_2.4 __res_state F
GLIBC_2.4 _pthread_cleanup_pop F
GLIBC_2.4 _pthread_cleanup_pop_restore F
GLIBC_2.4 _pthread_cleanup_push F
GLIBC_2.4 _pthread_cleanup_push_defer F
GLIBC_2.4 flockfile F
GLIBC_2.4 ftrylockfile F
GLIBC_2.4 funlockfile F

View File

@ -265,6 +265,10 @@ GLIBC_2.0 _obstack_begin_1 F
GLIBC_2.0 _obstack_free F
GLIBC_2.0 _obstack_memory_used F
GLIBC_2.0 _obstack_newchunk F
GLIBC_2.0 _pthread_cleanup_pop F
GLIBC_2.0 _pthread_cleanup_pop_restore F
GLIBC_2.0 _pthread_cleanup_push F
GLIBC_2.0 _pthread_cleanup_push_defer F
GLIBC_2.0 _res D 0x1fe
GLIBC_2.0 _rpc_dtablesize F
GLIBC_2.0 _seterr_reply F

View File

@ -15,10 +15,6 @@ GLIBC_2.0 __pthread_mutexattr_init F
GLIBC_2.0 __pthread_mutexattr_settype F
GLIBC_2.0 __pthread_once F
GLIBC_2.0 __pthread_setspecific F
GLIBC_2.0 _pthread_cleanup_pop F
GLIBC_2.0 _pthread_cleanup_pop_restore F
GLIBC_2.0 _pthread_cleanup_push F
GLIBC_2.0 _pthread_cleanup_push_defer F
GLIBC_2.0 flockfile F
GLIBC_2.0 ftrylockfile F
GLIBC_2.0 funlockfile F

View File

@ -541,6 +541,10 @@ GLIBC_2.18 _obstack_begin_1 F
GLIBC_2.18 _obstack_free F
GLIBC_2.18 _obstack_memory_used F
GLIBC_2.18 _obstack_newchunk F
GLIBC_2.18 _pthread_cleanup_pop F
GLIBC_2.18 _pthread_cleanup_pop_restore F
GLIBC_2.18 _pthread_cleanup_push F
GLIBC_2.18 _pthread_cleanup_push_defer F
GLIBC_2.18 _res D 0x200
GLIBC_2.18 _res_hconf D 0x30
GLIBC_2.18 _rpc_dtablesize F

View File

@ -28,10 +28,6 @@ GLIBC_2.18 __pthread_unregister_cancel F
GLIBC_2.18 __pthread_unregister_cancel_restore F
GLIBC_2.18 __pthread_unwind_next F
GLIBC_2.18 __res_state F
GLIBC_2.18 _pthread_cleanup_pop F
GLIBC_2.18 _pthread_cleanup_pop_restore F
GLIBC_2.18 _pthread_cleanup_push F
GLIBC_2.18 _pthread_cleanup_push_defer F
GLIBC_2.18 flockfile F
GLIBC_2.18 ftrylockfile F
GLIBC_2.18 funlockfile F

View File

@ -541,6 +541,10 @@ GLIBC_2.18 _obstack_begin_1 F
GLIBC_2.18 _obstack_free F
GLIBC_2.18 _obstack_memory_used F
GLIBC_2.18 _obstack_newchunk F
GLIBC_2.18 _pthread_cleanup_pop F
GLIBC_2.18 _pthread_cleanup_pop_restore F
GLIBC_2.18 _pthread_cleanup_push F
GLIBC_2.18 _pthread_cleanup_push_defer F
GLIBC_2.18 _res D 0x200
GLIBC_2.18 _res_hconf D 0x30
GLIBC_2.18 _rpc_dtablesize F

View File

@ -28,10 +28,6 @@ GLIBC_2.18 __pthread_unregister_cancel F
GLIBC_2.18 __pthread_unregister_cancel_restore F
GLIBC_2.18 __pthread_unwind_next F
GLIBC_2.18 __res_state F
GLIBC_2.18 _pthread_cleanup_pop F
GLIBC_2.18 _pthread_cleanup_pop_restore F
GLIBC_2.18 _pthread_cleanup_push F
GLIBC_2.18 _pthread_cleanup_push_defer F
GLIBC_2.18 flockfile F
GLIBC_2.18 ftrylockfile F
GLIBC_2.18 funlockfile F

View File

@ -262,6 +262,10 @@ GLIBC_2.0 _obstack_begin_1 F
GLIBC_2.0 _obstack_free F
GLIBC_2.0 _obstack_memory_used F
GLIBC_2.0 _obstack_newchunk F
GLIBC_2.0 _pthread_cleanup_pop F
GLIBC_2.0 _pthread_cleanup_pop_restore F
GLIBC_2.0 _pthread_cleanup_push F
GLIBC_2.0 _pthread_cleanup_push_defer F
GLIBC_2.0 _res D 0x200
GLIBC_2.0 _rpc_dtablesize F
GLIBC_2.0 _seterr_reply F

View File

@ -15,10 +15,6 @@ GLIBC_2.0 __pthread_mutexattr_init F
GLIBC_2.0 __pthread_mutexattr_settype F
GLIBC_2.0 __pthread_once F
GLIBC_2.0 __pthread_setspecific F
GLIBC_2.0 _pthread_cleanup_pop F
GLIBC_2.0 _pthread_cleanup_pop_restore F
GLIBC_2.0 _pthread_cleanup_push F
GLIBC_2.0 _pthread_cleanup_push_defer F
GLIBC_2.0 flockfile F
GLIBC_2.0 ftrylockfile F
GLIBC_2.0 funlockfile F

View File

@ -262,6 +262,10 @@ GLIBC_2.0 _obstack_begin_1 F
GLIBC_2.0 _obstack_free F
GLIBC_2.0 _obstack_memory_used F
GLIBC_2.0 _obstack_newchunk F
GLIBC_2.0 _pthread_cleanup_pop F
GLIBC_2.0 _pthread_cleanup_pop_restore F
GLIBC_2.0 _pthread_cleanup_push F
GLIBC_2.0 _pthread_cleanup_push_defer F
GLIBC_2.0 _res D 0x200
GLIBC_2.0 _rpc_dtablesize F
GLIBC_2.0 _seterr_reply F

View File

@ -15,10 +15,6 @@ GLIBC_2.0 __pthread_mutexattr_init F
GLIBC_2.0 __pthread_mutexattr_settype F
GLIBC_2.0 __pthread_once F
GLIBC_2.0 __pthread_setspecific F
GLIBC_2.0 _pthread_cleanup_pop F
GLIBC_2.0 _pthread_cleanup_pop_restore F
GLIBC_2.0 _pthread_cleanup_push F
GLIBC_2.0 _pthread_cleanup_push_defer F
GLIBC_2.0 flockfile F
GLIBC_2.0 ftrylockfile F
GLIBC_2.0 funlockfile F

View File

@ -262,6 +262,10 @@ GLIBC_2.0 _obstack_begin_1 F
GLIBC_2.0 _obstack_free F
GLIBC_2.0 _obstack_memory_used F
GLIBC_2.0 _obstack_newchunk F
GLIBC_2.0 _pthread_cleanup_pop F
GLIBC_2.0 _pthread_cleanup_pop_restore F
GLIBC_2.0 _pthread_cleanup_push F
GLIBC_2.0 _pthread_cleanup_push_defer F
GLIBC_2.0 _res D 0x200
GLIBC_2.0 _rpc_dtablesize F
GLIBC_2.0 _seterr_reply F

View File

@ -260,6 +260,10 @@ GLIBC_2.0 _obstack_begin_1 F
GLIBC_2.0 _obstack_free F
GLIBC_2.0 _obstack_memory_used F
GLIBC_2.0 _obstack_newchunk F
GLIBC_2.0 _pthread_cleanup_pop F
GLIBC_2.0 _pthread_cleanup_pop_restore F
GLIBC_2.0 _pthread_cleanup_push F
GLIBC_2.0 _pthread_cleanup_push_defer F
GLIBC_2.0 _res D 0x238
GLIBC_2.0 _rpc_dtablesize F
GLIBC_2.0 _seterr_reply F

View File

@ -583,6 +583,10 @@ GLIBC_2.21 _obstack_begin_1 F
GLIBC_2.21 _obstack_free F
GLIBC_2.21 _obstack_memory_used F
GLIBC_2.21 _obstack_newchunk F
GLIBC_2.21 _pthread_cleanup_pop F
GLIBC_2.21 _pthread_cleanup_pop_restore F
GLIBC_2.21 _pthread_cleanup_push F
GLIBC_2.21 _pthread_cleanup_push_defer F
GLIBC_2.21 _res D 0x200
GLIBC_2.21 _res_hconf D 0x30
GLIBC_2.21 _rpc_dtablesize F

View File

@ -28,10 +28,6 @@ GLIBC_2.21 __pthread_unregister_cancel F
GLIBC_2.21 __pthread_unregister_cancel_restore F
GLIBC_2.21 __pthread_unwind_next F
GLIBC_2.21 __res_state F
GLIBC_2.21 _pthread_cleanup_pop F
GLIBC_2.21 _pthread_cleanup_pop_restore F
GLIBC_2.21 _pthread_cleanup_push F
GLIBC_2.21 _pthread_cleanup_push_defer F
GLIBC_2.21 flockfile F
GLIBC_2.21 ftrylockfile F
GLIBC_2.21 funlockfile F

View File

@ -275,6 +275,10 @@ GLIBC_2.0 _obstack_begin_1 F
GLIBC_2.0 _obstack_free F
GLIBC_2.0 _obstack_memory_used F
GLIBC_2.0 _obstack_newchunk F
GLIBC_2.0 _pthread_cleanup_pop F
GLIBC_2.0 _pthread_cleanup_pop_restore F
GLIBC_2.0 _pthread_cleanup_push F
GLIBC_2.0 _pthread_cleanup_push_defer F
GLIBC_2.0 _res D 0x200
GLIBC_2.0 _rpc_dtablesize F
GLIBC_2.0 _seterr_reply F

View File

@ -15,10 +15,6 @@ GLIBC_2.0 __pthread_mutexattr_init F
GLIBC_2.0 __pthread_mutexattr_settype F
GLIBC_2.0 __pthread_once F
GLIBC_2.0 __pthread_setspecific F
GLIBC_2.0 _pthread_cleanup_pop F
GLIBC_2.0 _pthread_cleanup_pop_restore F
GLIBC_2.0 _pthread_cleanup_push F
GLIBC_2.0 _pthread_cleanup_push_defer F
GLIBC_2.0 flockfile F
GLIBC_2.0 ftrylockfile F
GLIBC_2.0 funlockfile F

View File

@ -275,6 +275,10 @@ GLIBC_2.0 _obstack_begin_1 F
GLIBC_2.0 _obstack_free F
GLIBC_2.0 _obstack_memory_used F
GLIBC_2.0 _obstack_newchunk F
GLIBC_2.0 _pthread_cleanup_pop F
GLIBC_2.0 _pthread_cleanup_pop_restore F
GLIBC_2.0 _pthread_cleanup_push F
GLIBC_2.0 _pthread_cleanup_push_defer F
GLIBC_2.0 _res D 0x200
GLIBC_2.0 _rpc_dtablesize F
GLIBC_2.0 _seterr_reply F

View File

@ -561,6 +561,10 @@ GLIBC_2.3 _obstack_begin_1 F
GLIBC_2.3 _obstack_free F
GLIBC_2.3 _obstack_memory_used F
GLIBC_2.3 _obstack_newchunk F
GLIBC_2.3 _pthread_cleanup_pop F
GLIBC_2.3 _pthread_cleanup_pop_restore F
GLIBC_2.3 _pthread_cleanup_push F
GLIBC_2.3 _pthread_cleanup_push_defer F
GLIBC_2.3 _res D 0x238
GLIBC_2.3 _res_hconf D 0x48
GLIBC_2.3 _rpc_dtablesize F

View File

@ -51,10 +51,6 @@ GLIBC_2.3 __pthread_rwlock_unlock F
GLIBC_2.3 __pthread_rwlock_wrlock F
GLIBC_2.3 __pthread_setspecific F
GLIBC_2.3 __res_state F
GLIBC_2.3 _pthread_cleanup_pop F
GLIBC_2.3 _pthread_cleanup_pop_restore F
GLIBC_2.3 _pthread_cleanup_push F
GLIBC_2.3 _pthread_cleanup_push_defer F
GLIBC_2.3 flockfile F
GLIBC_2.3 ftrylockfile F
GLIBC_2.3 funlockfile F

View File

@ -627,6 +627,10 @@ GLIBC_2.17 _obstack_begin_1 F
GLIBC_2.17 _obstack_free F
GLIBC_2.17 _obstack_memory_used F
GLIBC_2.17 _obstack_newchunk F
GLIBC_2.17 _pthread_cleanup_pop F
GLIBC_2.17 _pthread_cleanup_pop_restore F
GLIBC_2.17 _pthread_cleanup_push F
GLIBC_2.17 _pthread_cleanup_push_defer F
GLIBC_2.17 _res D 0x238
GLIBC_2.17 _res_hconf D 0x48
GLIBC_2.17 _rpc_dtablesize F

View File

@ -28,10 +28,6 @@ GLIBC_2.17 __pthread_unregister_cancel F
GLIBC_2.17 __pthread_unregister_cancel_restore F
GLIBC_2.17 __pthread_unwind_next F
GLIBC_2.17 __res_state F
GLIBC_2.17 _pthread_cleanup_pop F
GLIBC_2.17 _pthread_cleanup_pop_restore F
GLIBC_2.17 _pthread_cleanup_push F
GLIBC_2.17 _pthread_cleanup_push_defer F
GLIBC_2.17 flockfile F
GLIBC_2.17 ftrylockfile F
GLIBC_2.17 funlockfile F

View File

@ -500,6 +500,10 @@ GLIBC_2.33 _obstack_begin_1 F
GLIBC_2.33 _obstack_free F
GLIBC_2.33 _obstack_memory_used F
GLIBC_2.33 _obstack_newchunk F
GLIBC_2.33 _pthread_cleanup_pop F
GLIBC_2.33 _pthread_cleanup_pop_restore F
GLIBC_2.33 _pthread_cleanup_push F
GLIBC_2.33 _pthread_cleanup_push_defer F
GLIBC_2.33 _res D 0x200
GLIBC_2.33 _res_hconf D 0x30
GLIBC_2.33 _setjmp F

View File

@ -28,10 +28,6 @@ GLIBC_2.33 __pthread_unregister_cancel F
GLIBC_2.33 __pthread_unregister_cancel_restore F
GLIBC_2.33 __pthread_unwind_next F
GLIBC_2.33 __res_state F
GLIBC_2.33 _pthread_cleanup_pop F
GLIBC_2.33 _pthread_cleanup_pop_restore F
GLIBC_2.33 _pthread_cleanup_push F
GLIBC_2.33 _pthread_cleanup_push_defer F
GLIBC_2.33 call_once F
GLIBC_2.33 cnd_broadcast F
GLIBC_2.33 cnd_destroy F

View File

@ -521,6 +521,10 @@ GLIBC_2.27 _obstack_begin_1 F
GLIBC_2.27 _obstack_free F
GLIBC_2.27 _obstack_memory_used F
GLIBC_2.27 _obstack_newchunk F
GLIBC_2.27 _pthread_cleanup_pop F
GLIBC_2.27 _pthread_cleanup_pop_restore F
GLIBC_2.27 _pthread_cleanup_push F
GLIBC_2.27 _pthread_cleanup_push_defer F
GLIBC_2.27 _res D 0x238
GLIBC_2.27 _res_hconf D 0x48
GLIBC_2.27 _rpc_dtablesize F

View File

@ -28,10 +28,6 @@ GLIBC_2.27 __pthread_unregister_cancel F
GLIBC_2.27 __pthread_unregister_cancel_restore F
GLIBC_2.27 __pthread_unwind_next F
GLIBC_2.27 __res_state F
GLIBC_2.27 _pthread_cleanup_pop F
GLIBC_2.27 _pthread_cleanup_pop_restore F
GLIBC_2.27 _pthread_cleanup_push F
GLIBC_2.27 _pthread_cleanup_push_defer F
GLIBC_2.27 flockfile F
GLIBC_2.27 ftrylockfile F
GLIBC_2.27 funlockfile F

View File

@ -265,6 +265,10 @@ GLIBC_2.0 _obstack_begin_1 F
GLIBC_2.0 _obstack_free F
GLIBC_2.0 _obstack_memory_used F
GLIBC_2.0 _obstack_newchunk F
GLIBC_2.0 _pthread_cleanup_pop F
GLIBC_2.0 _pthread_cleanup_pop_restore F
GLIBC_2.0 _pthread_cleanup_push F
GLIBC_2.0 _pthread_cleanup_push_defer F
GLIBC_2.0 _res D 0x200
GLIBC_2.0 _rpc_dtablesize F
GLIBC_2.0 _seterr_reply F

View File

@ -15,10 +15,6 @@ GLIBC_2.0 __pthread_mutexattr_init F
GLIBC_2.0 __pthread_mutexattr_settype F
GLIBC_2.0 __pthread_once F
GLIBC_2.0 __pthread_setspecific F
GLIBC_2.0 _pthread_cleanup_pop F
GLIBC_2.0 _pthread_cleanup_pop_restore F
GLIBC_2.0 _pthread_cleanup_push F
GLIBC_2.0 _pthread_cleanup_push_defer F
GLIBC_2.0 flockfile F
GLIBC_2.0 ftrylockfile F
GLIBC_2.0 funlockfile F

View File

@ -519,6 +519,10 @@ GLIBC_2.2 _obstack_begin_1 F
GLIBC_2.2 _obstack_free F
GLIBC_2.2 _obstack_memory_used F
GLIBC_2.2 _obstack_newchunk F
GLIBC_2.2 _pthread_cleanup_pop F
GLIBC_2.2 _pthread_cleanup_pop_restore F
GLIBC_2.2 _pthread_cleanup_push F
GLIBC_2.2 _pthread_cleanup_push_defer F
GLIBC_2.2 _res D 0x238
GLIBC_2.2 _res_hconf D 0x48
GLIBC_2.2 _rpc_dtablesize F

View File

@ -32,10 +32,6 @@ GLIBC_2.2 __pthread_rwlock_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pthread_setspecific F
GLIBC_2.2 __res_state F
GLIBC_2.2 _pthread_cleanup_pop F
GLIBC_2.2 _pthread_cleanup_pop_restore F
GLIBC_2.2 _pthread_cleanup_push F
GLIBC_2.2 _pthread_cleanup_push_defer F
GLIBC_2.2 flockfile F
GLIBC_2.2 ftrylockfile F
GLIBC_2.2 funlockfile F

View File

@ -505,6 +505,10 @@ GLIBC_2.2 _obstack_begin_1 F
GLIBC_2.2 _obstack_free F
GLIBC_2.2 _obstack_memory_used F
GLIBC_2.2 _obstack_newchunk F
GLIBC_2.2 _pthread_cleanup_pop F
GLIBC_2.2 _pthread_cleanup_pop_restore F
GLIBC_2.2 _pthread_cleanup_push F
GLIBC_2.2 _pthread_cleanup_push_defer F
GLIBC_2.2 _res D 0x200
GLIBC_2.2 _res_hconf D 0x30
GLIBC_2.2 _rpc_dtablesize F

View File

@ -30,10 +30,6 @@ GLIBC_2.2 __pthread_rwlock_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pthread_setspecific F
GLIBC_2.2 __res_state F
GLIBC_2.2 _pthread_cleanup_pop F
GLIBC_2.2 _pthread_cleanup_pop_restore F
GLIBC_2.2 _pthread_cleanup_push F
GLIBC_2.2 _pthread_cleanup_push_defer F
GLIBC_2.2 flockfile F
GLIBC_2.2 ftrylockfile F
GLIBC_2.2 funlockfile F

View File

@ -505,6 +505,10 @@ GLIBC_2.2 _obstack_begin_1 F
GLIBC_2.2 _obstack_free F
GLIBC_2.2 _obstack_memory_used F
GLIBC_2.2 _obstack_newchunk F
GLIBC_2.2 _pthread_cleanup_pop F
GLIBC_2.2 _pthread_cleanup_pop_restore F
GLIBC_2.2 _pthread_cleanup_push F
GLIBC_2.2 _pthread_cleanup_push_defer F
GLIBC_2.2 _res D 0x200
GLIBC_2.2 _res_hconf D 0x30
GLIBC_2.2 _rpc_dtablesize F

View File

@ -30,10 +30,6 @@ GLIBC_2.2 __pthread_rwlock_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pthread_setspecific F
GLIBC_2.2 __res_state F
GLIBC_2.2 _pthread_cleanup_pop F
GLIBC_2.2 _pthread_cleanup_pop_restore F
GLIBC_2.2 _pthread_cleanup_push F
GLIBC_2.2 _pthread_cleanup_push_defer F
GLIBC_2.2 flockfile F
GLIBC_2.2 ftrylockfile F
GLIBC_2.2 funlockfile F

View File

@ -267,6 +267,10 @@ GLIBC_2.0 _obstack_begin_1 F
GLIBC_2.0 _obstack_free F
GLIBC_2.0 _obstack_memory_used F
GLIBC_2.0 _obstack_newchunk F
GLIBC_2.0 _pthread_cleanup_pop F
GLIBC_2.0 _pthread_cleanup_pop_restore F
GLIBC_2.0 _pthread_cleanup_push F
GLIBC_2.0 _pthread_cleanup_push_defer F
GLIBC_2.0 _res D 0x200
GLIBC_2.0 _rpc_dtablesize F
GLIBC_2.0 _seterr_reply F

View File

@ -15,10 +15,6 @@ GLIBC_2.0 __pthread_mutexattr_init F
GLIBC_2.0 __pthread_mutexattr_settype F
GLIBC_2.0 __pthread_once F
GLIBC_2.0 __pthread_setspecific F
GLIBC_2.0 _pthread_cleanup_pop F
GLIBC_2.0 _pthread_cleanup_pop_restore F
GLIBC_2.0 _pthread_cleanup_push F
GLIBC_2.0 _pthread_cleanup_push_defer F
GLIBC_2.0 flockfile F
GLIBC_2.0 ftrylockfile F
GLIBC_2.0 funlockfile F

View File

@ -547,6 +547,10 @@ GLIBC_2.2 _obstack_begin_1 F
GLIBC_2.2 _obstack_free F
GLIBC_2.2 _obstack_memory_used F
GLIBC_2.2 _obstack_newchunk F
GLIBC_2.2 _pthread_cleanup_pop F
GLIBC_2.2 _pthread_cleanup_pop_restore F
GLIBC_2.2 _pthread_cleanup_push F
GLIBC_2.2 _pthread_cleanup_push_defer F
GLIBC_2.2 _res D 0x238
GLIBC_2.2 _res_hconf D 0x48
GLIBC_2.2 _rpc_dtablesize F

View File

@ -30,10 +30,6 @@ GLIBC_2.2 __pthread_rwlock_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pthread_setspecific F
GLIBC_2.2 __res_state F
GLIBC_2.2 _pthread_cleanup_pop F
GLIBC_2.2 _pthread_cleanup_pop_restore F
GLIBC_2.2 _pthread_cleanup_push F
GLIBC_2.2 _pthread_cleanup_push_defer F
GLIBC_2.2 flockfile F
GLIBC_2.2 ftrylockfile F
GLIBC_2.2 funlockfile F

View File

@ -508,6 +508,10 @@ GLIBC_2.2.5 _obstack_begin_1 F
GLIBC_2.2.5 _obstack_free F
GLIBC_2.2.5 _obstack_memory_used F
GLIBC_2.2.5 _obstack_newchunk F
GLIBC_2.2.5 _pthread_cleanup_pop F
GLIBC_2.2.5 _pthread_cleanup_pop_restore F
GLIBC_2.2.5 _pthread_cleanup_push F
GLIBC_2.2.5 _pthread_cleanup_push_defer F
GLIBC_2.2.5 _res D 0x238
GLIBC_2.2.5 _res_hconf D 0x48
GLIBC_2.2.5 _rpc_dtablesize F

View File

@ -30,10 +30,6 @@ GLIBC_2.2.5 __pthread_rwlock_unlock F
GLIBC_2.2.5 __pthread_rwlock_wrlock F
GLIBC_2.2.5 __pthread_setspecific F
GLIBC_2.2.5 __res_state F
GLIBC_2.2.5 _pthread_cleanup_pop F
GLIBC_2.2.5 _pthread_cleanup_pop_restore F
GLIBC_2.2.5 _pthread_cleanup_push F
GLIBC_2.2.5 _pthread_cleanup_push_defer F
GLIBC_2.2.5 flockfile F
GLIBC_2.2.5 ftrylockfile F
GLIBC_2.2.5 funlockfile F

View File

@ -542,6 +542,10 @@ GLIBC_2.16 _obstack_begin_1 F
GLIBC_2.16 _obstack_free F
GLIBC_2.16 _obstack_memory_used F
GLIBC_2.16 _obstack_newchunk F
GLIBC_2.16 _pthread_cleanup_pop F
GLIBC_2.16 _pthread_cleanup_pop_restore F
GLIBC_2.16 _pthread_cleanup_push F
GLIBC_2.16 _pthread_cleanup_push_defer F
GLIBC_2.16 _res D 0x200
GLIBC_2.16 _res_hconf D 0x30
GLIBC_2.16 _rpc_dtablesize F

View File

@ -28,10 +28,6 @@ GLIBC_2.16 __pthread_unregister_cancel F
GLIBC_2.16 __pthread_unregister_cancel_restore F
GLIBC_2.16 __pthread_unwind_next F
GLIBC_2.16 __res_state F
GLIBC_2.16 _pthread_cleanup_pop F
GLIBC_2.16 _pthread_cleanup_pop_restore F
GLIBC_2.16 _pthread_cleanup_push F
GLIBC_2.16 _pthread_cleanup_push_defer F
GLIBC_2.16 flockfile F
GLIBC_2.16 ftrylockfile F
GLIBC_2.16 funlockfile F