From ccf19a68ab067c81a3d24d9b5d1743ca2cf79184 Mon Sep 17 00:00:00 2001 From: gfleury Date: Sun, 9 Feb 2025 22:01:04 +0200 Subject: [PATCH] htl: move pthread_barrierattr_getpshared, pthread_barrierattr_setpshared into libc. Message-ID: <20250209200108.865599-5-gfleury@disroot.org> --- htl/Makefile | 4 ++-- htl/Versions | 6 ++++-- sysdeps/htl/pt-barrierattr-getpshared.c | 9 ++++++++- sysdeps/htl/pt-barrierattr-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(+), 10 deletions(-) diff --git a/htl/Makefile b/htl/Makefile index 7b2485471a..6194bf87b0 100644 --- a/htl/Makefile +++ b/htl/Makefile @@ -28,8 +28,6 @@ libpthread-routines := \ pt-barrier-destroy \ pt-barrier-init \ pt-barrier-wait \ - pt-barrierattr-getpshared \ - pt-barrierattr-setpshared \ pt-destroy-specific \ pt-init-specific \ pt-key-create \ @@ -160,7 +158,9 @@ routines := \ pt-attr-setstacksize \ pt-barrier \ pt-barrierattr-destroy \ + pt-barrierattr-getpshared \ pt-barrierattr-init \ + pt-barrierattr-setpshared \ pt-block \ pt-block-intr \ pt-cond \ diff --git a/htl/Versions b/htl/Versions index ccd2a6180b..cf8f86d764 100644 --- a/htl/Versions +++ b/htl/Versions @@ -27,7 +27,9 @@ libc { pthread_attr_setschedparam; pthread_attr_init; pthread_barrierattr_destroy; + pthread_barrierattr_getpshared; pthread_barrierattr_init; + pthread_barrierattr_setpshared; pthread_cond_broadcast; pthread_cond_destroy; pthread_cond_init; @@ -127,7 +129,9 @@ libc { GLIBC_2.42 { pthread_barrierattr_destroy; + pthread_barrierattr_getpshared; pthread_barrierattr_init; + pthread_barrierattr_setpshared; pthread_mutex_consistent; pthread_mutex_consistent_np; pthread_mutex_getprioceiling; pthread_mutex_setprioceiling; @@ -207,8 +211,6 @@ libpthread { pthread_atfork; pthread_barrier_destroy; pthread_barrier_init; pthread_barrier_wait; - pthread_barrierattr_getpshared; - pthread_barrierattr_setpshared; pthread_cancel; diff --git a/sysdeps/htl/pt-barrierattr-getpshared.c b/sysdeps/htl/pt-barrierattr-getpshared.c index 2ecf10c259..be739e7f79 100644 --- a/sysdeps/htl/pt-barrierattr-getpshared.c +++ b/sysdeps/htl/pt-barrierattr-getpshared.c @@ -18,11 +18,18 @@ #include #include +#include int -pthread_barrierattr_getpshared (const pthread_barrierattr_t *attr, +__pthread_barrierattr_getpshared (const pthread_barrierattr_t *attr, int *pshared) { *pshared = attr->__pshared; return 0; } +libc_hidden_def (__pthread_barrierattr_getpshared) +versioned_symbol (libc, __pthread_barrierattr_getpshared, pthread_barrierattr_getpshared, GLIBC_2_42); + +#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42) +compat_symbol (libpthread, __pthread_barrierattr_getpshared, pthread_barrierattr_getpshared, GLIBC_2_12); +#endif diff --git a/sysdeps/htl/pt-barrierattr-setpshared.c b/sysdeps/htl/pt-barrierattr-setpshared.c index 5dd8aa1587..5816a440dd 100644 --- a/sysdeps/htl/pt-barrierattr-setpshared.c +++ b/sysdeps/htl/pt-barrierattr-setpshared.c @@ -18,9 +18,10 @@ #include #include +#include int -pthread_barrierattr_setpshared (pthread_barrierattr_t *attr, int pshared) +__pthread_barrierattr_setpshared (pthread_barrierattr_t *attr, int pshared) { switch (pshared) { @@ -35,4 +36,10 @@ pthread_barrierattr_setpshared (pthread_barrierattr_t *attr, int pshared) return EINVAL; } } +libc_hidden_def (__pthread_barrierattr_setpshared) +versioned_symbol (libc, __pthread_barrierattr_setpshared, pthread_barrierattr_setpshared, GLIBC_2_42); + +#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_42) +compat_symbol (libpthread, __pthread_barrierattr_setpshared, pthread_barrierattr_setpshared, GLIBC_2_12); +#endif stub_warning (pthread_barrierattr_setpshared) diff --git a/sysdeps/htl/pthreadP.h b/sysdeps/htl/pthreadP.h index c7a6298290..ae6a0cc7a6 100644 --- a/sysdeps/htl/pthreadP.h +++ b/sysdeps/htl/pthreadP.h @@ -33,8 +33,14 @@ extern void __pthread_init_static_tls (struct link_map *) attribute_hidden; extern int __pthread_barrierattr_destroy (pthread_barrierattr_t *__attr); libc_hidden_proto (__pthread_barrierattr_destroy) +extern int __pthread_barrierattr_getpshared (const pthread_barrierattr_t *__attr, + int *__pshared); +libc_hidden_proto (__pthread_barrierattr_getpshared) extern int __pthread_barrierattr_init (pthread_barrierattr_t *__attr); libc_hidden_proto (__pthread_barrierattr_init) +extern int __pthread_barrierattr_setpshared (pthread_barrierattr_t *__attr, + int __pshared); +libc_hidden_proto (__pthread_barrierattr_setpshared) extern int __pthread_mutex_init (pthread_mutex_t *__mutex, const pthread_mutexattr_t *__attr); libc_hidden_proto (__pthread_mutex_init) extern int __pthread_mutex_clocklock (pthread_mutex_t *__mutex, clockid_t __clockid, diff --git a/sysdeps/mach/hurd/i386/libc.abilist b/sysdeps/mach/hurd/i386/libc.abilist index eb141157db..dc8627667f 100644 --- a/sysdeps/mach/hurd/i386/libc.abilist +++ b/sysdeps/mach/hurd/i386/libc.abilist @@ -50,7 +50,9 @@ GLIBC_2.12 pthread_attr_setstack F GLIBC_2.12 pthread_attr_setstackaddr F GLIBC_2.12 pthread_attr_setstacksize F GLIBC_2.12 pthread_barrierattr_destroy F +GLIBC_2.12 pthread_barrierattr_getpshared F GLIBC_2.12 pthread_barrierattr_init F +GLIBC_2.12 pthread_barrierattr_setpshared F GLIBC_2.12 pthread_cond_broadcast F GLIBC_2.12 pthread_cond_destroy F GLIBC_2.12 pthread_cond_init F @@ -2564,7 +2566,9 @@ GLIBC_2.41 pthread_mutexattr_setrobust_np F GLIBC_2.41 pthread_mutexattr_settype F GLIBC_2.41 pthread_sigmask F GLIBC_2.42 pthread_barrierattr_destroy F +GLIBC_2.42 pthread_barrierattr_getpshared F GLIBC_2.42 pthread_barrierattr_init F +GLIBC_2.42 pthread_barrierattr_setpshared F GLIBC_2.42 pthread_mutex_consistent F GLIBC_2.42 pthread_mutex_consistent_np F GLIBC_2.42 pthread_mutex_getprioceiling F diff --git a/sysdeps/mach/hurd/i386/libpthread.abilist b/sysdeps/mach/hurd/i386/libpthread.abilist index 1083a7c001..65fcf5e435 100644 --- a/sysdeps/mach/hurd/i386/libpthread.abilist +++ b/sysdeps/mach/hurd/i386/libpthread.abilist @@ -25,8 +25,6 @@ GLIBC_2.12 pthread_atfork F GLIBC_2.12 pthread_barrier_destroy F GLIBC_2.12 pthread_barrier_init F GLIBC_2.12 pthread_barrier_wait F -GLIBC_2.12 pthread_barrierattr_getpshared F -GLIBC_2.12 pthread_barrierattr_setpshared F GLIBC_2.12 pthread_cancel F GLIBC_2.12 pthread_create F GLIBC_2.12 pthread_detach F diff --git a/sysdeps/mach/hurd/x86_64/libc.abilist b/sysdeps/mach/hurd/x86_64/libc.abilist index e7bada388e..8129eaf96c 100644 --- a/sysdeps/mach/hurd/x86_64/libc.abilist +++ b/sysdeps/mach/hurd/x86_64/libc.abilist @@ -1532,7 +1532,9 @@ GLIBC_2.38 pthread_attr_setstack F GLIBC_2.38 pthread_attr_setstackaddr F GLIBC_2.38 pthread_attr_setstacksize F GLIBC_2.38 pthread_barrierattr_destroy F +GLIBC_2.38 pthread_barrierattr_getpshared F GLIBC_2.38 pthread_barrierattr_init F +GLIBC_2.38 pthread_barrierattr_setpshared F GLIBC_2.38 pthread_cond_broadcast F GLIBC_2.38 pthread_cond_clockwait F GLIBC_2.38 pthread_cond_destroy F @@ -2247,7 +2249,9 @@ GLIBC_2.41 pthread_mutexattr_setrobust_np F GLIBC_2.41 pthread_mutexattr_settype F GLIBC_2.41 pthread_sigmask F GLIBC_2.42 pthread_barrierattr_destroy F +GLIBC_2.42 pthread_barrierattr_getpshared F GLIBC_2.42 pthread_barrierattr_init F +GLIBC_2.42 pthread_barrierattr_setpshared F GLIBC_2.42 pthread_mutex_consistent F GLIBC_2.42 pthread_mutex_consistent_np F GLIBC_2.42 pthread_mutex_getprioceiling F diff --git a/sysdeps/mach/hurd/x86_64/libpthread.abilist b/sysdeps/mach/hurd/x86_64/libpthread.abilist index 97a4377079..89e10c557c 100644 --- a/sysdeps/mach/hurd/x86_64/libpthread.abilist +++ b/sysdeps/mach/hurd/x86_64/libpthread.abilist @@ -42,8 +42,6 @@ GLIBC_2.38 mtx_unlock F GLIBC_2.38 pthread_barrier_destroy F GLIBC_2.38 pthread_barrier_init F GLIBC_2.38 pthread_barrier_wait F -GLIBC_2.38 pthread_barrierattr_getpshared F -GLIBC_2.38 pthread_barrierattr_setpshared F GLIBC_2.38 pthread_cancel F GLIBC_2.38 pthread_clockjoin_np F GLIBC_2.38 pthread_create F