aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgfleury <gfleury@disroot.org>2025-08-15 20:14:54 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2025-08-16 01:44:51 +0200
commitf6a47e2d61ae6cb07d6683fd22c246c494f2de1d (patch)
treefdd9d0e424b448905773d9ef86160f2b81d2bd99
parent1e6588e777e4a07f68575f51ffcb1c84d9c73f50 (diff)
downloadglibc-f6a47e2d61ae6cb07d6683fd22c246c494f2de1d.zip
glibc-f6a47e2d61ae6cb07d6683fd22c246c494f2de1d.tar.gz
glibc-f6a47e2d61ae6cb07d6683fd22c246c494f2de1d.tar.bz2
htl: move pthread_mutex_transfer_np into libc.
Message-ID: <20250815181500.107433-14-gfleury@disroot.org>
-rw-r--r--htl/Makefile2
-rw-r--r--htl/Versions7
-rw-r--r--sysdeps/mach/hurd/htl/pt-mutex-transfer-np.c7
-rw-r--r--sysdeps/mach/hurd/i386/libc.abilist3
-rw-r--r--sysdeps/mach/hurd/i386/libpthread.abilist2
-rw-r--r--sysdeps/mach/hurd/x86_64/libc.abilist3
-rw-r--r--sysdeps/mach/hurd/x86_64/libpthread.abilist2
7 files changed, 16 insertions, 10 deletions
diff --git a/htl/Makefile b/htl/Makefile
index 64e484c..7ce5626 100644
--- a/htl/Makefile
+++ b/htl/Makefile
@@ -31,7 +31,6 @@ libpthread-routines := \
pt-initialize \
pt-join \
pt-spin-inlines \
- pt-mutex-transfer-np \
pt-hurd-cond-wait \
pt-hurd-cond-timedwait \
pt-startup \
@@ -161,6 +160,7 @@ routines := \
pt-mutex-lock \
pt-mutex-setprioceiling \
pt-mutex-timedlock \
+ pt-mutex-transfer-np \
pt-mutex-trylock \
pt-mutex-unlock \
pt-mutexattr-destroy \
diff --git a/htl/Versions b/htl/Versions
index c94bd61..7d0b5f2 100644
--- a/htl/Versions
+++ b/htl/Versions
@@ -5,6 +5,7 @@ libc {
__pthread_get_cleanup_stack;
__pthread_key_create;
__pthread_kill;
+ __pthread_mutex_transfer_np;
__pthread_self;
pthread_attr_getdetachstate;
pthread_attr_getinheritsched;
@@ -62,6 +63,7 @@ libc {
pthread_mutex_lock;
pthread_mutex_setprioceiling;
pthread_mutex_timedlock;
+ pthread_mutex_transfer_np;
pthread_mutex_trylock;
pthread_mutex_unlock;
pthread_mutexattr_destroy;
@@ -202,6 +204,7 @@ libc {
pthread_getconcurrency;
pthread_getcpuclockid;
pthread_kill;
+ pthread_mutex_transfer_np;
pthread_setconcurrency;
pthread_setschedprio;
pthread_testcancel;
@@ -276,8 +279,6 @@ libpthread {
__errno_location; __h_errno_location;
}
GLIBC_2.12 {
- __pthread_mutex_transfer_np;
-
cthread_detach;
cthread_fork;
cthread_keycreate;
@@ -297,8 +298,6 @@ libpthread {
pthread_join;
- pthread_mutex_transfer_np;
-
sem_close; sem_destroy; sem_getvalue; sem_init; sem_open; sem_post;
sem_timedwait; sem_trywait; sem_unlink; sem_wait;
diff --git a/sysdeps/mach/hurd/htl/pt-mutex-transfer-np.c b/sysdeps/mach/hurd/htl/pt-mutex-transfer-np.c
index 72f83ee..8961cb2 100644
--- a/sysdeps/mach/hurd/htl/pt-mutex-transfer-np.c
+++ b/sysdeps/mach/hurd/htl/pt-mutex-transfer-np.c
@@ -24,6 +24,8 @@
#include "pt-mutex.h"
#include <hurdlock.h>
#include <unistd.h>
+#include <shlib-compat.h>
+#include <ldsodefs.h>
int
__pthread_mutex_transfer_np (pthread_mutex_t *mtxp, pthread_t th)
@@ -73,5 +75,8 @@ __pthread_mutex_transfer_np (pthread_mutex_t *mtxp, pthread_t th)
return ret;
}
+versioned_symbol (libc, __pthread_mutex_transfer_np, pthread_mutex_transfer_np, GLIBC_2_43);
-weak_alias (__pthread_mutex_transfer_np, pthread_mutex_transfer_np)
+#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_43)
+compat_symbol (libpthread, __pthread_mutex_transfer_np, pthread_mutex_transfer_np, GLIBC_2_12);
+#endif
diff --git a/sysdeps/mach/hurd/i386/libc.abilist b/sysdeps/mach/hurd/i386/libc.abilist
index 0cbff57..e795ff5 100644
--- a/sysdeps/mach/hurd/i386/libc.abilist
+++ b/sysdeps/mach/hurd/i386/libc.abilist
@@ -31,6 +31,7 @@ GLIBC_2.11 mkstemps64 F
GLIBC_2.12 __pthread_get_cleanup_stack F
GLIBC_2.12 __pthread_key_create F
GLIBC_2.12 __pthread_kill F
+GLIBC_2.12 __pthread_mutex_transfer_np F
GLIBC_2.12 __pthread_self F
GLIBC_2.12 pthread_attr_destroy F
GLIBC_2.12 pthread_attr_getdetachstate F
@@ -87,6 +88,7 @@ GLIBC_2.12 pthread_mutex_init F
GLIBC_2.12 pthread_mutex_lock F
GLIBC_2.12 pthread_mutex_setprioceiling F
GLIBC_2.12 pthread_mutex_timedlock F
+GLIBC_2.12 pthread_mutex_transfer_np F
GLIBC_2.12 pthread_mutex_trylock F
GLIBC_2.12 pthread_mutex_unlock F
GLIBC_2.12 pthread_mutexattr_destroy F
@@ -2648,6 +2650,7 @@ GLIBC_2.43 pthread_getattr_np F
GLIBC_2.43 pthread_getconcurrency F
GLIBC_2.43 pthread_getcpuclockid F
GLIBC_2.43 pthread_kill F
+GLIBC_2.43 pthread_mutex_transfer_np F
GLIBC_2.43 pthread_setconcurrency F
GLIBC_2.43 pthread_setschedprio F
GLIBC_2.43 pthread_testcancel F
diff --git a/sysdeps/mach/hurd/i386/libpthread.abilist b/sysdeps/mach/hurd/i386/libpthread.abilist
index 3d22516..bfec2a2 100644
--- a/sysdeps/mach/hurd/i386/libpthread.abilist
+++ b/sysdeps/mach/hurd/i386/libpthread.abilist
@@ -1,6 +1,5 @@
GLIBC_2.12 __mutex_lock_solid F
GLIBC_2.12 __mutex_unlock_solid F
-GLIBC_2.12 __pthread_mutex_transfer_np F
GLIBC_2.12 __pthread_spin_destroy F
GLIBC_2.12 __pthread_spin_init F
GLIBC_2.12 __pthread_spin_lock F
@@ -23,7 +22,6 @@ GLIBC_2.12 pthread_create F
GLIBC_2.12 pthread_detach F
GLIBC_2.12 pthread_exit F
GLIBC_2.12 pthread_join F
-GLIBC_2.12 pthread_mutex_transfer_np F
GLIBC_2.12 pthread_spin_destroy F
GLIBC_2.12 pthread_spin_init F
GLIBC_2.12 pthread_spin_lock F
diff --git a/sysdeps/mach/hurd/x86_64/libc.abilist b/sysdeps/mach/hurd/x86_64/libc.abilist
index 2b983e4..bebf927 100644
--- a/sysdeps/mach/hurd/x86_64/libc.abilist
+++ b/sysdeps/mach/hurd/x86_64/libc.abilist
@@ -394,6 +394,7 @@ GLIBC_2.38 __progname_full D 0x8
GLIBC_2.38 __pthread_get_cleanup_stack F
GLIBC_2.38 __pthread_key_create F
GLIBC_2.38 __pthread_kill F
+GLIBC_2.38 __pthread_mutex_transfer_np F
GLIBC_2.38 __pthread_self F
GLIBC_2.38 __ptsname_r_chk F
GLIBC_2.38 __pwrite64 F
@@ -1573,6 +1574,7 @@ GLIBC_2.38 pthread_mutex_init F
GLIBC_2.38 pthread_mutex_lock F
GLIBC_2.38 pthread_mutex_setprioceiling F
GLIBC_2.38 pthread_mutex_timedlock F
+GLIBC_2.38 pthread_mutex_transfer_np F
GLIBC_2.38 pthread_mutex_trylock F
GLIBC_2.38 pthread_mutex_unlock F
GLIBC_2.38 pthread_mutexattr_destroy F
@@ -2330,6 +2332,7 @@ GLIBC_2.43 pthread_getattr_np F
GLIBC_2.43 pthread_getconcurrency F
GLIBC_2.43 pthread_getcpuclockid F
GLIBC_2.43 pthread_kill F
+GLIBC_2.43 pthread_mutex_transfer_np F
GLIBC_2.43 pthread_setconcurrency F
GLIBC_2.43 pthread_setschedprio F
GLIBC_2.43 pthread_testcancel F
diff --git a/sysdeps/mach/hurd/x86_64/libpthread.abilist b/sysdeps/mach/hurd/x86_64/libpthread.abilist
index cf45150..9164c47 100644
--- a/sysdeps/mach/hurd/x86_64/libpthread.abilist
+++ b/sysdeps/mach/hurd/x86_64/libpthread.abilist
@@ -5,7 +5,6 @@ GLIBC_2.38 __errno_location F
GLIBC_2.38 __h_errno_location F
GLIBC_2.38 __mutex_lock_solid F
GLIBC_2.38 __mutex_unlock_solid F
-GLIBC_2.38 __pthread_mutex_transfer_np F
GLIBC_2.38 __pthread_spin_destroy F
GLIBC_2.38 __pthread_spin_init F
GLIBC_2.38 __pthread_spin_lock F
@@ -43,7 +42,6 @@ GLIBC_2.38 pthread_exit F
GLIBC_2.38 pthread_hurd_cond_timedwait_np F
GLIBC_2.38 pthread_hurd_cond_wait_np F
GLIBC_2.38 pthread_join F
-GLIBC_2.38 pthread_mutex_transfer_np F
GLIBC_2.38 pthread_spin_destroy F
GLIBC_2.38 pthread_spin_init F
GLIBC_2.38 pthread_spin_lock F