summaryrefslogtreecommitdiff
path: root/nptl
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2021-05-03 09:10:57 +0200
committerFlorian Weimer <fweimer@redhat.com>2021-05-03 09:18:04 +0200
commit2392feb17188fed30bc16fd032e0a43e022b8ead (patch)
tree0580b921bec4d9771d036e0995ef8bf2a0309db1 /nptl
parent63627246f3e0aae274e04a8ef1edcd05a11afa65 (diff)
downloadglibc-2392feb17188fed30bc16fd032e0a43e022b8ead.tar.gz
nptl: Move pthread_rwlock_timedrdlock into libc
The symbol was moved using scripts/move-symbol-to-libc.py. Reviewed-by: Carlos O'Donell <carlos@redhat.com> Tested-by: Carlos O'Donell <carlos@redhat.com>
Diffstat (limited to 'nptl')
-rw-r--r--nptl/Makefile2
-rw-r--r--nptl/Versions3
-rw-r--r--nptl/pthreadP.h2
-rw-r--r--nptl/pthread_rwlock_timedrdlock.c23
4 files changed, 20 insertions, 10 deletions
diff --git a/nptl/Makefile b/nptl/Makefile
index 281c771ebb..dce39abbb1 100644
--- a/nptl/Makefile
+++ b/nptl/Makefile
@@ -125,6 +125,7 @@ routines = \
pthread_rwlock_destroy \
pthread_rwlock_init \
pthread_rwlock_rdlock \
+ pthread_rwlock_timedrdlock \
pthread_rwlock_unlock \
pthread_rwlock_wrlock \
pthread_self \
@@ -182,7 +183,6 @@ libpthread-routines = \
pthread_getname \
pthread_join \
pthread_join_common \
- pthread_rwlock_timedrdlock \
pthread_rwlock_timedwrlock \
pthread_rwlock_tryrdlock \
pthread_rwlock_trywrlock \
diff --git a/nptl/Versions b/nptl/Versions
index 0e9e3326eb..5ffbfc11d9 100644
--- a/nptl/Versions
+++ b/nptl/Versions
@@ -88,6 +88,7 @@ libc {
pthread_spin_lock;
pthread_spin_trylock;
pthread_spin_unlock;
+ pthread_rwlock_timedrdlock;
}
GLIBC_2.2.3 {
pthread_getattr_np;
@@ -214,6 +215,7 @@ libc {
pthread_rwlock_clockwrlock;
pthread_rwlock_destroy;
pthread_rwlock_rdlock;
+ pthread_rwlock_timedrdlock;
pthread_rwlock_unlock;
pthread_rwlock_wrlock;
pthread_setspecific;
@@ -341,7 +343,6 @@ libpthread {
pthread_barrierattr_init;
pthread_barrierattr_setpshared;
pthread_getcpuclockid;
- pthread_rwlock_timedrdlock;
pthread_rwlock_timedwrlock;
pthread_yield;
sem_timedwait;
diff --git a/nptl/pthreadP.h b/nptl/pthreadP.h
index 70e17cb78f..f51a915f1e 100644
--- a/nptl/pthreadP.h
+++ b/nptl/pthreadP.h
@@ -512,7 +512,7 @@ extern int __pthread_rwlock_clockwrlock64 (pthread_rwlock_t *rwlock,
libc_hidden_proto (__pthread_rwlock_clockwrlock64)
extern int __pthread_rwlock_timedrdlock64 (pthread_rwlock_t *rwlock,
const struct __timespec64 *abstime);
-libpthread_hidden_proto (__pthread_rwlock_timedrdlock64)
+libc_hidden_proto (__pthread_rwlock_timedrdlock64)
extern int __pthread_rwlock_timedwrlock64 (pthread_rwlock_t *rwlock,
const struct __timespec64 *abstime);
libpthread_hidden_proto (__pthread_rwlock_timedwrlock64)
diff --git a/nptl/pthread_rwlock_timedrdlock.c b/nptl/pthread_rwlock_timedrdlock.c
index db02ee7f5c..dd9b7cb0a2 100644
--- a/nptl/pthread_rwlock_timedrdlock.c
+++ b/nptl/pthread_rwlock_timedrdlock.c
@@ -17,25 +17,34 @@
<https://www.gnu.org/licenses/>. */
#include "pthread_rwlock_common.c"
+#include <shlib-compat.h>
/* See pthread_rwlock_common.c. */
int
-__pthread_rwlock_timedrdlock64 (pthread_rwlock_t *rwlock,
- const struct __timespec64 *abstime)
+___pthread_rwlock_timedrdlock64 (pthread_rwlock_t *rwlock,
+ const struct __timespec64 *abstime)
{
return __pthread_rwlock_rdlock_full64 (rwlock, CLOCK_REALTIME, abstime);
}
-#if __TIMESIZE != 64
-libpthread_hidden_def (__pthread_rwlock_timedrdlock64)
+#if __TIMESIZE == 64
+strong_alias (___pthread_rwlock_timedrdlock64, ___pthread_rwlock_timedrdlock)
+#else /* __TIMESPEC64 != 64 */
+libc_hidden_ver (___pthread_rwlock_timedrdlock64,
+ __pthread_rwlock_timedrdlock64)
int
-__pthread_rwlock_timedrdlock (pthread_rwlock_t *rwlock,
- const struct timespec *abstime)
+___pthread_rwlock_timedrdlock (pthread_rwlock_t *rwlock,
+ const struct timespec *abstime)
{
struct __timespec64 ts64 = valid_timespec_to_timespec64 (*abstime);
return __pthread_rwlock_timedrdlock64 (rwlock, &ts64);
}
+#endif /* __TIMESPEC64 != 64 */
+versioned_symbol (libc, ___pthread_rwlock_timedrdlock,
+ pthread_rwlock_timedrdlock, GLIBC_2_34);
+#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_2, GLIBC_2_34)
+compat_symbol (libpthread, ___pthread_rwlock_timedrdlock,
+ pthread_rwlock_timedrdlock, GLIBC_2_2);
#endif
-weak_alias (__pthread_rwlock_timedrdlock, pthread_rwlock_timedrdlock)