From c27bcc95880934481fc1a128486e93447de6a0dd Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Tue, 13 Jul 2021 21:33:39 +0000 Subject: [PATCH] htl: Let libc call __pthread_mutex_{,try,un}lock Now that NPTL was moved to libc, libc makes internal __pthread calls, so htl has to expose them internally. --- htl/Versions | 1 + sysdeps/htl/pthreadP.h | 3 +++ sysdeps/mach/hurd/htl/pt-mutex-lock.c | 1 + sysdeps/mach/hurd/htl/pt-mutex-trylock.c | 1 + sysdeps/mach/hurd/htl/pt-mutex-unlock.c | 1 + 5 files changed, 7 insertions(+) diff --git a/htl/Versions b/htl/Versions index 9506043..4aea321 100644 --- a/htl/Versions +++ b/htl/Versions @@ -187,6 +187,7 @@ libpthread { __pthread_enable_asynccancel; __pthread_disable_asynccancel; + __pthread_mutex_lock; __pthread_mutex_trylock; __pthread_mutex_unlock; _pthread_mutex_lock; _pthread_mutex_trylock; _pthread_mutex_unlock; _pthread_rwlock_destroy; _pthread_rwlock_init; } diff --git a/sysdeps/htl/pthreadP.h b/sysdeps/htl/pthreadP.h index 3b357b7..7b3f969 100644 --- a/sysdeps/htl/pthreadP.h +++ b/sysdeps/htl/pthreadP.h @@ -36,10 +36,13 @@ extern struct __pthread **__pthread_threads; extern int __pthread_mutex_init (pthread_mutex_t *__mutex, const pthread_mutexattr_t *__attr); extern int __pthread_mutex_destroy (pthread_mutex_t *__mutex); extern int __pthread_mutex_lock (pthread_mutex_t *__mutex); +hidden_proto (__pthread_mutex_lock) extern int __pthread_mutex_trylock (pthread_mutex_t *_mutex); +hidden_proto (__pthread_mutex_trylock) extern int __pthread_mutex_timedlock (pthread_mutex_t *__mutex, const struct timespec *__abstime); extern int __pthread_mutex_unlock (pthread_mutex_t *__mutex); +hidden_proto (__pthread_mutex_unlock) extern int __pthread_mutexattr_init (pthread_mutexattr_t *attr); extern int __pthread_mutexattr_settype (pthread_mutexattr_t *attr, int kind); diff --git a/sysdeps/mach/hurd/htl/pt-mutex-lock.c b/sysdeps/mach/hurd/htl/pt-mutex-lock.c index e32066b..5214489 100644 --- a/sysdeps/mach/hurd/htl/pt-mutex-lock.c +++ b/sysdeps/mach/hurd/htl/pt-mutex-lock.c @@ -76,5 +76,6 @@ __pthread_mutex_lock (pthread_mutex_t *mtxp) return ret; } +hidden_def (__pthread_mutex_lock) strong_alias (__pthread_mutex_lock, _pthread_mutex_lock) weak_alias (__pthread_mutex_lock, pthread_mutex_lock) diff --git a/sysdeps/mach/hurd/htl/pt-mutex-trylock.c b/sysdeps/mach/hurd/htl/pt-mutex-trylock.c index 5aa39ab..1be451a 100644 --- a/sysdeps/mach/hurd/htl/pt-mutex-trylock.c +++ b/sysdeps/mach/hurd/htl/pt-mutex-trylock.c @@ -80,5 +80,6 @@ __pthread_mutex_trylock (pthread_mutex_t *mtxp) return ret; } +hidden_def (__pthread_mutex_trylock) strong_alias (__pthread_mutex_trylock, _pthread_mutex_trylock) weak_alias (__pthread_mutex_trylock, pthread_mutex_trylock) diff --git a/sysdeps/mach/hurd/htl/pt-mutex-unlock.c b/sysdeps/mach/hurd/htl/pt-mutex-unlock.c index 35fa77d..74ae51e 100644 --- a/sysdeps/mach/hurd/htl/pt-mutex-unlock.c +++ b/sysdeps/mach/hurd/htl/pt-mutex-unlock.c @@ -87,5 +87,6 @@ __pthread_mutex_unlock (pthread_mutex_t *mtxp) return ret; } +hidden_def (__pthread_mutex_unlock) strong_alias (__pthread_mutex_unlock, _pthread_mutex_unlock) weak_alias (__pthread_mutex_unlock, pthread_mutex_unlock) -- 2.7.4