From 4b25413df5127b7ff7fb3903bf8acb8a64743db4 Mon Sep 17 00:00:00 2001 From: gfleury Date: Sun, 16 Feb 2025 16:54:28 +0200 Subject: [PATCH] htl: move pthread_rwlockattr_getpshared, pthread_rwlockattr_setpshared into libc. Signed-off-by: gfleury Message-ID: <20250216145434.7089-5-gfleury@disroot.org> --- htl/Makefile | 4 ++-- htl/Versions | 7 ++++--- sysdeps/htl/pt-rwlockattr-getpshared.c | 9 ++++++++- sysdeps/htl/pt-rwlockattr-setpshared.c | 9 ++++++++- sysdeps/htl/pthreadP.h | 6 ++++++ sysdeps/mach/hurd/i386/libc.abilist | 4 ++++ sysdeps/mach/hurd/i386/libpthread.abilist | 2 -- sysdeps/mach/hurd/x86_64/libc.abilist | 4 ++++ sysdeps/mach/hurd/x86_64/libpthread.abilist | 2 -- 9 files changed, 36 insertions(+), 11 deletions(-) diff --git a/htl/Makefile b/htl/Makefile index 84b85f1a9a..651af8d82a 100644 --- a/htl/Makefile +++ b/htl/Makefile @@ -45,8 +45,6 @@ libpthread-routines := \ pt-testcancel \ pt-cancel \ pt-mutex-transfer-np \ - pt-rwlockattr-getpshared \ - pt-rwlockattr-setpshared \ pt-rwlock-init \ pt-rwlock-destroy \ pt-rwlock-rdlock \ @@ -200,7 +198,9 @@ routines := \ pt-pthread_self \ pt-rwlock-attr \ pt-rwlockattr-destroy \ + pt-rwlockattr-getpshared \ pt-rwlockattr-init \ + pt-rwlockattr-setpshared \ pt-self pt-equal \ pt-setcancelstate \ pt-setcanceltype \ diff --git a/htl/Versions b/htl/Versions index f6a1566a20..1d666bcb3c 100644 --- a/htl/Versions +++ b/htl/Versions @@ -64,7 +64,9 @@ libc { pthread_mutexattr_setpshared; pthread_mutexattr_settype; pthread_rwlockattr_destroy; + pthread_rwlockattr_getpshared; pthread_rwlockattr_init; + pthread_rwlockattr_setpshared; pthread_setcancelstate; pthread_setcanceltype; pthread_sigmask; @@ -145,7 +147,9 @@ libc { pthread_mutex_setprioceiling; pthread_mutex_trylock; pthread_rwlockattr_destroy; + pthread_rwlockattr_getpshared; pthread_rwlockattr_init; + pthread_rwlockattr_setpshared; } GLIBC_PRIVATE { @@ -246,9 +250,6 @@ libpthread { pthread_rwlock_tryrdlock; pthread_rwlock_trywrlock; pthread_rwlock_unlock; pthread_rwlock_wrlock; - pthread_rwlockattr_getpshared; - pthread_rwlockattr_setpshared; - pthread_setconcurrency; pthread_setschedprio; pthread_setspecific; diff --git a/sysdeps/htl/pt-rwlockattr-getpshared.c b/sysdeps/htl/pt-rwlockattr-getpshared.c index 9e57d39c41..15470ada09 100644 --- a/sysdeps/htl/pt-rwlockattr-getpshared.c +++ b/sysdeps/htl/pt-rwlockattr-getpshared.c @@ -18,10 +18,17 @@ #include #include +#include int -pthread_rwlockattr_getpshared (const pthread_rwlockattr_t *attr, int *pshared) +__pthread_rwlockattr_getpshared (const pthread_rwlockattr_t *attr, int *pshared) { *pshared = attr->__pshared; return 0; } +libc_hidden_def (__pthread_rwlockattr_getpshared) +versioned_symbol (libc, __pthread_rwlockattr_getpshared, pthread_rwlockattr_getpshared, GLIBC_2_42); + +#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42) +compat_symbol (libpthread, __pthread_rwlockattr_getpshared, pthread_rwlockattr_getpshared, GLIBC_2_12); +#endif diff --git a/sysdeps/htl/pt-rwlockattr-setpshared.c b/sysdeps/htl/pt-rwlockattr-setpshared.c index 94fdf761c0..e23a032d4a 100644 --- a/sysdeps/htl/pt-rwlockattr-setpshared.c +++ b/sysdeps/htl/pt-rwlockattr-setpshared.c @@ -18,9 +18,10 @@ #include #include +#include int -pthread_rwlockattr_setpshared (pthread_rwlockattr_t *attr, int pshared) +__pthread_rwlockattr_setpshared (pthread_rwlockattr_t *attr, int pshared) { switch (pshared) { @@ -35,4 +36,10 @@ pthread_rwlockattr_setpshared (pthread_rwlockattr_t *attr, int pshared) return EINVAL; } } +libc_hidden_def (__pthread_rwlockattr_setpshared) +versioned_symbol (libc, __pthread_rwlockattr_setpshared, pthread_rwlockattr_setpshared, GLIBC_2_42); + +#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42) +compat_symbol (libpthread, __pthread_rwlockattr_setpshared, pthread_rwlockattr_setpshared, GLIBC_2_12); +#endif stub_warning (pthread_rwlockattr_setpshared) diff --git a/sysdeps/htl/pthreadP.h b/sysdeps/htl/pthreadP.h index 0f22c85d41..d77cee51a5 100644 --- a/sysdeps/htl/pthreadP.h +++ b/sysdeps/htl/pthreadP.h @@ -116,8 +116,14 @@ extern int __pthread_mutexattr_settype(pthread_mutexattr_t *__attr, libc_hidden_proto (__pthread_mutexattr_settype) extern int __pthread_rwlockattr_destroy (pthread_rwlockattr_t *__attr); libc_hidden_proto (__pthread_rwlockattr_destroy) +extern int __pthread_rwlockattr_getpshared (const pthread_rwlockattr_t *__attr, + int *__pshared); +libc_hidden_proto (__pthread_rwlockattr_getpshared) extern int __pthread_rwlockattr_init (pthread_rwlockattr_t *__attr); libc_hidden_proto (__pthread_rwlockattr_init) +extern int __pthread_rwlockattr_setpshared (pthread_rwlockattr_t *__attr, + int __pshared); +libc_hidden_proto (__pthread_rwlockattr_setpshared) extern int __pthread_cond_init (pthread_cond_t *cond, const pthread_condattr_t *cond_attr); diff --git a/sysdeps/mach/hurd/i386/libc.abilist b/sysdeps/mach/hurd/i386/libc.abilist index 2ed475b751..55ad6b423f 100644 --- a/sysdeps/mach/hurd/i386/libc.abilist +++ b/sysdeps/mach/hurd/i386/libc.abilist @@ -89,7 +89,9 @@ GLIBC_2.12 pthread_mutexattr_setprotocol F GLIBC_2.12 pthread_mutexattr_setpshared F GLIBC_2.12 pthread_mutexattr_settype F GLIBC_2.12 pthread_rwlockattr_destroy F +GLIBC_2.12 pthread_rwlockattr_getpshared F GLIBC_2.12 pthread_rwlockattr_init F +GLIBC_2.12 pthread_rwlockattr_setpshared F GLIBC_2.12 pthread_self F GLIBC_2.12 pthread_setcancelstate F GLIBC_2.12 pthread_setcanceltype F @@ -2583,7 +2585,9 @@ GLIBC_2.42 pthread_mutex_getprioceiling F GLIBC_2.42 pthread_mutex_setprioceiling F GLIBC_2.42 pthread_mutex_trylock F GLIBC_2.42 pthread_rwlockattr_destroy F +GLIBC_2.42 pthread_rwlockattr_getpshared F GLIBC_2.42 pthread_rwlockattr_init F +GLIBC_2.42 pthread_rwlockattr_setpshared F GLIBC_2.5 __readlinkat_chk F GLIBC_2.5 inet6_opt_append F GLIBC_2.5 inet6_opt_find F diff --git a/sysdeps/mach/hurd/i386/libpthread.abilist b/sysdeps/mach/hurd/i386/libpthread.abilist index ad5fb60d4b..df7c46455a 100644 --- a/sysdeps/mach/hurd/i386/libpthread.abilist +++ b/sysdeps/mach/hurd/i386/libpthread.abilist @@ -45,8 +45,6 @@ GLIBC_2.12 pthread_rwlock_tryrdlock F GLIBC_2.12 pthread_rwlock_trywrlock F GLIBC_2.12 pthread_rwlock_unlock F GLIBC_2.12 pthread_rwlock_wrlock F -GLIBC_2.12 pthread_rwlockattr_getpshared F -GLIBC_2.12 pthread_rwlockattr_setpshared F GLIBC_2.12 pthread_setconcurrency F GLIBC_2.12 pthread_setschedprio F GLIBC_2.12 pthread_setspecific F diff --git a/sysdeps/mach/hurd/x86_64/libc.abilist b/sysdeps/mach/hurd/x86_64/libc.abilist index 9ab097d9d8..3075e10305 100644 --- a/sysdeps/mach/hurd/x86_64/libc.abilist +++ b/sysdeps/mach/hurd/x86_64/libc.abilist @@ -1580,7 +1580,9 @@ GLIBC_2.38 pthread_mutexattr_setrobust F GLIBC_2.38 pthread_mutexattr_setrobust_np F GLIBC_2.38 pthread_mutexattr_settype F GLIBC_2.38 pthread_rwlockattr_destroy F +GLIBC_2.38 pthread_rwlockattr_getpshared F GLIBC_2.38 pthread_rwlockattr_init F +GLIBC_2.38 pthread_rwlockattr_setpshared F GLIBC_2.38 pthread_self F GLIBC_2.38 pthread_setcancelstate F GLIBC_2.38 pthread_setcanceltype F @@ -2266,7 +2268,9 @@ GLIBC_2.42 pthread_mutex_getprioceiling F GLIBC_2.42 pthread_mutex_setprioceiling F GLIBC_2.42 pthread_mutex_trylock F GLIBC_2.42 pthread_rwlockattr_destroy F +GLIBC_2.42 pthread_rwlockattr_getpshared F GLIBC_2.42 pthread_rwlockattr_init F +GLIBC_2.42 pthread_rwlockattr_setpshared F HURD_CTHREADS_0.3 __cthread_getspecific F HURD_CTHREADS_0.3 __cthread_keycreate F HURD_CTHREADS_0.3 __cthread_setspecific F diff --git a/sysdeps/mach/hurd/x86_64/libpthread.abilist b/sysdeps/mach/hurd/x86_64/libpthread.abilist index a6c70d36ad..89fe63f256 100644 --- a/sysdeps/mach/hurd/x86_64/libpthread.abilist +++ b/sysdeps/mach/hurd/x86_64/libpthread.abilist @@ -67,8 +67,6 @@ GLIBC_2.38 pthread_rwlock_tryrdlock F GLIBC_2.38 pthread_rwlock_trywrlock F GLIBC_2.38 pthread_rwlock_unlock F GLIBC_2.38 pthread_rwlock_wrlock F -GLIBC_2.38 pthread_rwlockattr_getpshared F -GLIBC_2.38 pthread_rwlockattr_setpshared F GLIBC_2.38 pthread_setconcurrency F GLIBC_2.38 pthread_setschedprio F GLIBC_2.38 pthread_setspecific F