diff options
65 files changed, 146 insertions, 66 deletions
diff --git a/nptl/Makefile b/nptl/Makefile index a7c2c061ab..51a4740123 100644 --- a/nptl/Makefile +++ b/nptl/Makefile @@ -109,6 +109,7 @@ routines = \ pthread_mutexattr_getpshared \ pthread_mutexattr_getrobust \ pthread_mutexattr_gettype \ + pthread_mutexattr_init \ pthread_once \ pthread_rwlock_rdlock \ pthread_rwlock_unlock \ @@ -168,7 +169,6 @@ libpthread-routines = \ pthread_getname \ pthread_join \ pthread_join_common \ - pthread_mutexattr_init \ pthread_mutexattr_setprioceiling \ pthread_mutexattr_setprotocol \ pthread_mutexattr_setpshared \ diff --git a/nptl/Versions b/nptl/Versions index a04fb94068..1639efba7c 100644 --- a/nptl/Versions +++ b/nptl/Versions @@ -8,6 +8,7 @@ libc { __pthread_mutex_trylock; __pthread_mutex_unlock; __pthread_mutexattr_destroy; + __pthread_mutexattr_init; __pthread_once; __pthread_setspecific; _pthread_cleanup_pop; @@ -50,6 +51,7 @@ libc { pthread_mutex_unlock; pthread_mutexattr_destroy; pthread_mutexattr_getkind_np; + pthread_mutexattr_init; pthread_once; pthread_self; pthread_setcancelstate; @@ -132,6 +134,7 @@ libc { __pthread_mutex_init; __pthread_mutex_lock; __pthread_mutex_unlock; + __pthread_mutexattr_init; __pthread_once; __pthread_setspecific; pthread_cond_clockwait; @@ -148,6 +151,7 @@ libc { pthread_mutexattr_getprotocol; pthread_mutexattr_getrobust; pthread_mutexattr_gettype; + pthread_mutexattr_init; pthread_once; pthread_rwlock_rdlock; pthread_rwlock_unlock; @@ -211,7 +215,6 @@ libpthread { _IO_funlockfile; __errno_location; __h_errno_location; - __pthread_mutexattr_init; __pthread_mutexattr_settype; _exit; flockfile; @@ -221,7 +224,6 @@ libpthread { pthread_create; pthread_detach; pthread_join; - pthread_mutexattr_init; pthread_mutexattr_setkind_np; pthread_sigmask; pthread_testcancel; diff --git a/nptl/pthreadP.h b/nptl/pthreadP.h index 8432c0ebe7..115dbed52c 100644 --- a/nptl/pthreadP.h +++ b/nptl/pthreadP.h @@ -579,7 +579,6 @@ libc_hidden_proto (__pthread_sigmask); #if IS_IN (libpthread) hidden_proto (__pthread_rwlock_unlock) hidden_proto (__pthread_testcancel) -hidden_proto (__pthread_mutexattr_init) hidden_proto (__pthread_mutexattr_settype) #endif diff --git a/nptl/pthread_mutexattr_init.c b/nptl/pthread_mutexattr_init.c index 945d4348f5..ca0c5e94dd 100644 --- a/nptl/pthread_mutexattr_init.c +++ b/nptl/pthread_mutexattr_init.c @@ -18,10 +18,10 @@ #include <string.h> #include <pthreadP.h> - +#include <shlib-compat.h> int -__pthread_mutexattr_init (pthread_mutexattr_t *attr) +___pthread_mutexattr_init (pthread_mutexattr_t *attr) { ASSERT_TYPE_SIZE (pthread_mutexattr_t, __SIZEOF_PTHREAD_MUTEXATTR_T); ASSERT_PTHREAD_INTERNAL_SIZE (pthread_mutexattr_t, @@ -37,5 +37,14 @@ __pthread_mutexattr_init (pthread_mutexattr_t *attr) return 0; } -weak_alias (__pthread_mutexattr_init, pthread_mutexattr_init) -hidden_def (__pthread_mutexattr_init) +versioned_symbol (libc, ___pthread_mutexattr_init, + pthread_mutexattr_init, GLIBC_2_34); +versioned_symbol (libc, ___pthread_mutexattr_init, + __pthread_mutexattr_init, GLIBC_2_34); + +#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_0, GLIBC_2_34) +compat_symbol (libpthread, ___pthread_mutexattr_init, + pthread_mutexattr_init, GLIBC_2_0); +compat_symbol (libpthread, ___pthread_mutexattr_init, + __pthread_mutexattr_init, GLIBC_2_0); +#endif diff --git a/sysdeps/unix/sysv/linux/aarch64/libc.abilist b/sysdeps/unix/sysv/linux/aarch64/libc.abilist index 4eaa7dec5a..957b50344c 100644 --- a/sysdeps/unix/sysv/linux/aarch64/libc.abilist +++ b/sysdeps/unix/sysv/linux/aarch64/libc.abilist @@ -347,6 +347,7 @@ GLIBC_2.17 __pthread_mutex_lock F GLIBC_2.17 __pthread_mutex_trylock F GLIBC_2.17 __pthread_mutex_unlock F GLIBC_2.17 __pthread_mutexattr_destroy F +GLIBC_2.17 __pthread_mutexattr_init F GLIBC_2.17 __pthread_once F GLIBC_2.17 __pthread_rwlock_rdlock F GLIBC_2.17 __pthread_rwlock_unlock F @@ -1485,6 +1486,7 @@ GLIBC_2.17 pthread_mutexattr_getpshared F GLIBC_2.17 pthread_mutexattr_getrobust F GLIBC_2.17 pthread_mutexattr_getrobust_np F GLIBC_2.17 pthread_mutexattr_gettype F +GLIBC_2.17 pthread_mutexattr_init F GLIBC_2.17 pthread_once F GLIBC_2.17 pthread_rwlock_rdlock F GLIBC_2.17 pthread_rwlock_unlock F @@ -2226,6 +2228,7 @@ GLIBC_2.34 __pthread_mutex_init F GLIBC_2.34 __pthread_mutex_lock F GLIBC_2.34 __pthread_mutex_trylock F GLIBC_2.34 __pthread_mutex_unlock F +GLIBC_2.34 __pthread_mutexattr_init F GLIBC_2.34 __pthread_once F GLIBC_2.34 __pthread_setspecific F GLIBC_2.34 __pthread_unwind_next F @@ -2246,6 +2249,7 @@ GLIBC_2.34 pthread_mutexattr_getprotocol F GLIBC_2.34 pthread_mutexattr_getpshared F GLIBC_2.34 pthread_mutexattr_getrobust F GLIBC_2.34 pthread_mutexattr_gettype F +GLIBC_2.34 pthread_mutexattr_init F GLIBC_2.34 pthread_once F GLIBC_2.34 pthread_rwlock_rdlock F GLIBC_2.34 pthread_rwlock_unlock F diff --git a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist index 66a0ecbbf4..b3942cb152 100644 --- a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist @@ -3,7 +3,6 @@ GLIBC_2.17 _IO_ftrylockfile F GLIBC_2.17 _IO_funlockfile F GLIBC_2.17 __errno_location F GLIBC_2.17 __h_errno_location F -GLIBC_2.17 __pthread_mutexattr_init F GLIBC_2.17 __pthread_mutexattr_settype F GLIBC_2.17 __pthread_register_cancel F GLIBC_2.17 __pthread_register_cancel_defer F @@ -44,7 +43,6 @@ GLIBC_2.17 pthread_getconcurrency F GLIBC_2.17 pthread_getcpuclockid F GLIBC_2.17 pthread_getname_np F GLIBC_2.17 pthread_join F -GLIBC_2.17 pthread_mutexattr_init F GLIBC_2.17 pthread_mutexattr_setkind_np F GLIBC_2.17 pthread_mutexattr_setprioceiling F GLIBC_2.17 pthread_mutexattr_setprotocol F diff --git a/sysdeps/unix/sysv/linux/alpha/libc.abilist b/sysdeps/unix/sysv/linux/alpha/libc.abilist index 190565930a..a07518dca1 100644 --- a/sysdeps/unix/sysv/linux/alpha/libc.abilist +++ b/sysdeps/unix/sysv/linux/alpha/libc.abilist @@ -196,6 +196,7 @@ GLIBC_2.0 __pthread_mutex_lock F GLIBC_2.0 __pthread_mutex_trylock F GLIBC_2.0 __pthread_mutex_unlock F GLIBC_2.0 __pthread_mutexattr_destroy F +GLIBC_2.0 __pthread_mutexattr_init F GLIBC_2.0 __pthread_once F GLIBC_2.0 __pthread_setspecific F GLIBC_2.0 __rcmd_errstr D 0x8 |
