aboutsummaryrefslogtreecommitdiffstats
path: root/sysdeps
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2021-04-21 19:49:51 +0200
committerFlorian Weimer <fweimer@redhat.com>2021-04-21 19:49:51 +0200
commiteb29dcde31e7b6f07e7acda161e85d2be69652e4 (patch)
tree763b41f1d40d74c8ae84d3c2622ef5709644b820 /sysdeps
parent9ce44f46754cc529d54418615862e7e27cc82f09 (diff)
downloadglibc-eb29dcde31e7b6f07e7acda161e85d2be69652e4.tar.gz
glibc-eb29dcde31e7b6f07e7acda161e85d2be69652e4.tar.xz
glibc-eb29dcde31e7b6f07e7acda161e85d2be69652e4.zip
nptl: Move rwlock functions with forwarders into libc
The forwarders were only used internally, so new symbol versions are needed. All symbols are moved at once because the forwarders are no-ops if libpthread is not loaded, leading to inconsistencies in case of a partial migration. The symbols __pthread_rwlock_rdlock, __pthread_rwlock_unlock, __pthread_rwlock_wrlock, pthread_rwlock_rdlock, pthread_rwlock_unlock, pthread_rwlock_wrlock have been moved using scripts/move-symbol-to-libc.py. The __ symbol variants are turned into compat symbols, which is why they do not receive a GLIBC_2.34 version.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/nptl/libc-lockP.h21
-rw-r--r--sysdeps/nptl/pthread-functions.h3
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/alpha/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/alpha/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/arc/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/arc/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/arm/be/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/arm/be/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/arm/le/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/arm/le/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/csky/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/csky/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/hppa/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/hppa/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/i386/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/i386/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/ia64/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/ia64/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/microblaze/be/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/microblaze/le/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/nios2/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/nios2/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/sh/be/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/sh/be/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/sh/le/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/sh/le/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/64/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist6
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist6
63 files changed, 294 insertions, 192 deletions
diff --git a/sysdeps/nptl/libc-lockP.h b/sysdeps/nptl/libc-lockP.h
index 10a24568a9b..89910560fa5 100644
--- a/sysdeps/nptl/libc-lockP.h
+++ b/sysdeps/nptl/libc-lockP.h
@@ -167,10 +167,8 @@ _Static_assert (LLL_LOCK_INITIALIZER == 0, "LLL_LOCK_INITIALIZER != 0");
# define __libc_lock_lock(NAME) \
__libc_maybe_call (__pthread_mutex_lock, (&(NAME)), 0)
#endif
-#define __libc_rwlock_rdlock(NAME) \
- __libc_ptf_call (__pthread_rwlock_rdlock, (&(NAME)), 0)
-#define __libc_rwlock_wrlock(NAME) \
- __libc_ptf_call (__pthread_rwlock_wrlock, (&(NAME)), 0)
+#define __libc_rwlock_rdlock(NAME) __pthread_rwlock_rdlock (&(NAME))
+#define __libc_rwlock_wrlock(NAME) __pthread_rwlock_wrlock (&(NAME))
/* Try to lock the named lock variable. */
#if IS_IN (libc) || IS_IN (libpthread)
@@ -199,8 +197,7 @@ _Static_assert (LLL_LOCK_INITIALIZER == 0, "LLL_LOCK_INITIALIZER != 0");
# define __libc_lock_unlock(NAME) \
__libc_maybe_call (__pthread_mutex_unlock, (&(NAME)), 0)
#endif
-#define __libc_rwlock_unlock(NAME) \
- __libc_ptf_call (__pthread_rwlock_unlock, (&(NAME)), 0)
+#define __libc_rwlock_unlock(NAME) __pthread_rwlock_unlock (&(NAME))
#ifdef SHARED
# define __rtld_lock_default_lock_recursive(lock) \
@@ -299,15 +296,15 @@ extern int __pthread_rwlock_init (pthread_rwlock_t *__rwlock,
extern int __pthread_rwlock_destroy (pthread_rwlock_t *__rwlock);
extern int __pthread_rwlock_rdlock (pthread_rwlock_t *__rwlock);
-
+libc_hidden_proto (__pthread_rwlock_rdlock)
extern int __pthread_rwlock_tryrdlock (pthread_rwlock_t *__rwlock);
extern int __pthread_rwlock_wrlock (pthread_rwlock_t *__rwlock);
-
+libc_hidden_proto (__pthread_rwlock_wrlock)
extern int __pthread_rwlock_trywrlock (pthread_rwlock_t *__rwlock);
extern int __pthread_rwlock_unlock (pthread_rwlock_t *__rwlock);
-
+libc_hidden_proto (__pthread_rwlock_unlock)
extern int __pthread_once (pthread_once_t *__once_control,
void (*__init_routine) (void));
libc_hidden_proto (__pthread_once)
@@ -333,11 +330,8 @@ weak_extern (__pthread_mutexattr_destroy)
weak_extern (__pthread_mutexattr_settype)
weak_extern (__pthread_rwlock_init)
weak_extern (__pthread_rwlock_destroy)
-weak_extern (__pthread_rwlock_rdlock)
weak_extern (__pthread_rwlock_tryrdlock)
-weak_extern (__pthread_rwlock_wrlock)
weak_extern (__pthread_rwlock_trywrlock)
-weak_extern (__pthread_rwlock_unlock)
weak_extern (__pthread_initialize)
weak_extern (__pthread_atfork)
# else
@@ -350,11 +344,8 @@ weak_extern (__pthread_atfork)
# pragma weak __pthread_mutexattr_destroy
# pragma weak __pthread_mutexattr_settype
# pragma weak __pthread_rwlock_destroy
-# pragma weak __pthread_rwlock_rdlock
# pragma weak __pthread_rwlock_tryrdlock
-# pragma weak __pthread_rwlock_wrlock
# pragma weak __pthread_rwlock_trywrlock
-# pragma weak __pthread_rwlock_unlock
# pragma weak __pthread_initialize
# pragma weak __pthread_atfork
# endif
diff --git a/sysdeps/nptl/pthread-functions.h b/sysdeps/nptl/pthread-functions.h
index 2d89013ff52..8535e142d53 100644
--- a/sysdeps/nptl/pthread-functions.h
+++ b/sysdeps/nptl/pthread-functions.h
@@ -46,9 +46,6 @@ struct pthread_functions
const pthread_mutexattr_t *);
int (*ptr_pthread_mutex_lock) (pthread_mutex_t *);
int (*ptr_pthread_mutex_unlock) (pthread_mutex_t *);
- int (*ptr___pthread_rwlock_rdlock) (pthread_rwlock_t *);
- int (*ptr___pthread_rwlock_wrlock) (pthread_rwlock_t *);
- int (*ptr___pthread_rwlock_unlock) (pthread_rwlock_t *);
int (*ptr__nptl_setxid) (struct xid_command *);
};
diff --git a/sysdeps/unix/sysv/linux/aarch64/libc.abilist b/sysdeps/unix/sysv/linux/aarch64/libc.abilist
index f631286a494..26dd0b39591 100644
--- a/sysdeps/unix/sysv/linux/aarch64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/aarch64/libc.abilist
@@ -342,6 +342,9 @@ GLIBC_2.17 __pthread_cleanup_routine F
GLIBC_2.17 __pthread_getspecific F
GLIBC_2.17 __pthread_key_create F
GLIBC_2.17 __pthread_once F
+GLIBC_2.17 __pthread_rwlock_rdlock F
+GLIBC_2.17 __pthread_rwlock_unlock F
+GLIBC_2.17 __pthread_rwlock_wrlock F
GLIBC_2.17 __pthread_setspecific F
GLIBC_2.17 __pthread_unwind_next F
GLIBC_2.17 __ptsname_r_chk F
@@ -1464,6 +1467,9 @@ GLIBC_2.17 pthread_mutex_init F
GLIBC_2.17 pthread_mutex_lock F
GLIBC_2.17 pthread_mutex_unlock F
GLIBC_2.17 pthread_once F
+GLIBC_2.17 pthread_rwlock_rdlock F
+GLIBC_2.17 pthread_rwlock_unlock F
+GLIBC_2.17 pthread_rwlock_wrlock F
GLIBC_2.17 pthread_self F
GLIBC_2.17 pthread_setcancelstate F
GLIBC_2.17 pthread_setcanceltype F
@@ -2203,4 +2209,7 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist
index 28f454bbf77..3f0247fcecd 100644
--- a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist
@@ -15,11 +15,8 @@ GLIBC_2.17 __pthread_register_cancel F
GLIBC_2.17 __pthread_register_cancel_defer F
GLIBC_2.17 __pthread_rwlock_destroy F
GLIBC_2.17 __pthread_rwlock_init F
-GLIBC_2.17 __pthread_rwlock_rdlock F
GLIBC_2.17 __pthread_rwlock_tryrdlock F
GLIBC_2.17 __pthread_rwlock_trywrlock F
-GLIBC_2.17 __pthread_rwlock_unlock F
-GLIBC_2.17 __pthread_rwlock_wrlock F
GLIBC_2.17 __pthread_unregister_cancel F
GLIBC_2.17 __pthread_unregister_cancel_restore F
GLIBC_2.17 __res_state F
@@ -84,13 +81,10 @@ GLIBC_2.17 pthread_mutexattr_setrobust_np F
GLIBC_2.17 pthread_mutexattr_settype F
GLIBC_2.17 pthread_rwlock_destroy F
GLIBC_2.17 pthread_rwlock_init F
-GLIBC_2.17 pthread_rwlock_rdlock F
GLIBC_2.17 pthread_rwlock_timedrdlock F
GLIBC_2.17 pthread_rwlock_timedwrlock F
GLIBC_2.17 pthread_rwlock_tryrdlock F
GLIBC_2.17 pthread_rwlock_trywrlock F
-GLIBC_2.17 pthread_rwlock_unlock F
-GLIBC_2.17 pthread_rwlock_wrlock F
GLIBC_2.17 pthread_rwlockattr_destroy F
GLIBC_2.17 pthread_rwlockattr_getkind_np F
GLIBC_2.17 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/alpha/libc.abilist b/sysdeps/unix/sysv/linux/alpha/libc.abilist
index 436ea3d476e..2f094dfa8f0 100644
--- a/sysdeps/unix/sysv/linux/alpha/libc.abilist
+++ b/sysdeps/unix/sysv/linux/alpha/libc.abilist
@@ -1589,6 +1589,9 @@ GLIBC_2.1 pread64 F
GLIBC_2.1 printf_size F
GLIBC_2.1 printf_size_info F
GLIBC_2.1 pthread_attr_init F
+GLIBC_2.1 pthread_rwlock_rdlock F
+GLIBC_2.1 pthread_rwlock_unlock F
+GLIBC_2.1 pthread_rwlock_wrlock F
GLIBC_2.1 ptsname F
GLIBC_2.1 ptsname_r F
GLIBC_2.1 putgrent F
@@ -1863,6 +1866,9 @@ GLIBC_2.2 __getmntent_r F
GLIBC_2.2 __nl_langinfo_l F
GLIBC_2.2 __open64 F
GLIBC_2.2 __pread64 F
+GLIBC_2.2 __pthread_rwlock_rdlock F
+GLIBC_2.2 __pthread_rwlock_unlock F
+GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pwrite64 F
GLIBC_2.2 __res_init F
GLIBC_2.2 __res_nclose F
@@ -2291,6 +2297,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 _IO_fprintf F
GLIBC_2.4 _IO_printf F
diff --git a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist
index a91b42133ba..5a9cc846aed 100644
--- a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist
@@ -52,11 +52,8 @@ GLIBC_2.1 pthread_mutexattr_gettype F
GLIBC_2.1 pthread_mutexattr_settype F
GLIBC_2.1 pthread_rwlock_destroy F
GLIBC_2.1 pthread_rwlock_init F
-GLIBC_2.1 pthread_rwlock_rdlock F
GLIBC_2.1 pthread_rwlock_tryrdlock F
GLIBC_2.1 pthread_rwlock_trywrlock F
-GLIBC_2.1 pthread_rwlock_unlock F
-GLIBC_2.1 pthread_rwlock_wrlock F
GLIBC_2.1 pthread_rwlockattr_destroy F
GLIBC_2.1 pthread_rwlockattr_getkind_np F
GLIBC_2.1 pthread_rwlockattr_getpshared F
@@ -83,11 +80,8 @@ GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
GLIBC_2.2 __pthread_rwlock_destroy F
GLIBC_2.2 __pthread_rwlock_init F
-GLIBC_2.2 __pthread_rwlock_rdlock F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
-GLIBC_2.2 __pthread_rwlock_unlock F
-GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __res_state F
GLIBC_2.2 pthread_attr_getstack F
GLIBC_2.2 pthread_attr_setstack F
diff --git a/sysdeps/unix/sysv/linux/arc/libc.abilist b/sysdeps/unix/sysv/linux/arc/libc.abilist
index 580572aa951..cd41615242e 100644
--- a/sysdeps/unix/sysv/linux/arc/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arc/libc.abilist
@@ -331,6 +331,9 @@ GLIBC_2.32 __pthread_cleanup_routine F
GLIBC_2.32 __pthread_getspecific F
GLIBC_2.32 __pthread_key_create F
GLIBC_2.32 __pthread_once F
+GLIBC_2.32 __pthread_rwlock_rdlock F
+GLIBC_2.32 __pthread_rwlock_unlock F
+GLIBC_2.32 __pthread_rwlock_wrlock F
GLIBC_2.32 __pthread_setspecific F
GLIBC_2.32 __pthread_unwind_next F
GLIBC_2.32 __ptsname_r_chk F
@@ -1390,6 +1393,9 @@ GLIBC_2.32 pthread_mutex_init F
GLIBC_2.32 pthread_mutex_lock F
GLIBC_2.32 pthread_mutex_unlock F
GLIBC_2.32 pthread_once F
+GLIBC_2.32 pthread_rwlock_rdlock F
+GLIBC_2.32 pthread_rwlock_unlock F
+GLIBC_2.32 pthread_rwlock_wrlock F
GLIBC_2.32 pthread_self F
GLIBC_2.32 pthread_setcancelstate F
GLIBC_2.32 pthread_setcanceltype F
@@ -1962,4 +1968,7 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/arc/libpthread.abilist b/sysdeps/unix/sysv/linux/arc/libpthread.abilist
index 9783a47c893..b80e78ab9da 100644
--- a/sysdeps/unix/sysv/linux/arc/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/arc/libpthread.abilist
@@ -15,11 +15,8 @@ GLIBC_2.32 __pthread_register_cancel F
GLIBC_2.32 __pthread_register_cancel_defer F
GLIBC_2.32 __pthread_rwlock_destroy F
GLIBC_2.32 __pthread_rwlock_init F
-GLIBC_2.32 __pthread_rwlock_rdlock F
GLIBC_2.32 __pthread_rwlock_tryrdlock F
GLIBC_2.32 __pthread_rwlock_trywrlock F
-GLIBC_2.32 __pthread_rwlock_unlock F
-GLIBC_2.32 __pthread_rwlock_wrlock F
GLIBC_2.32 __pthread_unregister_cancel F
GLIBC_2.32 __pthread_unregister_cancel_restore F
GLIBC_2.32 __res_state F
@@ -103,13 +100,10 @@ GLIBC_2.32 pthread_rwlock_clockrdlock F
GLIBC_2.32 pthread_rwlock_clockwrlock F
GLIBC_2.32 pthread_rwlock_destroy F
GLIBC_2.32 pthread_rwlock_init F
-GLIBC_2.32 pthread_rwlock_rdlock F
GLIBC_2.32 pthread_rwlock_timedrdlock F
GLIBC_2.32 pthread_rwlock_timedwrlock F
GLIBC_2.32 pthread_rwlock_tryrdlock F
GLIBC_2.32 pthread_rwlock_trywrlock F
-GLIBC_2.32 pthread_rwlock_unlock F
-GLIBC_2.32 pthread_rwlock_wrlock F
GLIBC_2.32 pthread_rwlockattr_destroy F
GLIBC_2.32 pthread_rwlockattr_getkind_np F
GLIBC_2.32 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/arm/be/libc.abilist b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
index c33623caf85..770e1d99ea2 100644
--- a/sysdeps/unix/sysv/linux/arm/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
@@ -169,6 +169,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 _Exit F
GLIBC_2.4 _IO_2_1_stderr_ D 0xa0
@@ -501,6 +504,9 @@ GLIBC_2.4 __pthread_cleanup_routine F
GLIBC_2.4 __pthread_getspecific F
GLIBC_2.4 __pthread_key_create F
GLIBC_2.4 __pthread_once F
+GLIBC_2.4 __pthread_rwlock_rdlock F
+GLIBC_2.4 __pthread_rwlock_unlock F
+GLIBC_2.4 __pthread_rwlock_wrlock F
GLIBC_2.4 __pthread_setspecific F
GLIBC_2.4 __pthread_unwind_next F
GLIBC_2.4 __ptsname_r_chk F
@@ -1569,6 +1575,9 @@ GLIBC_2.4 pthread_mutex_init F
GLIBC_2.4 pthread_mutex_lock F
GLIBC_2.4 pthread_mutex_unlock F
GLIBC_2.4 pthread_once F
+GLIBC_2.4 pthread_rwlock_rdlock F
+GLIBC_2.4 pthread_rwlock_unlock F
+GLIBC_2.4 pthread_rwlock_wrlock F
GLIBC_2.4 pthread_self F
GLIBC_2.4 pthread_setcancelstate F
GLIBC_2.4 pthread_setcanceltype F
diff --git a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist
index aab1587c4d4..c2705e70577 100644
--- a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist
@@ -49,11 +49,8 @@ GLIBC_2.4 __pthread_register_cancel F
GLIBC_2.4 __pthread_register_cancel_defer F
GLIBC_2.4 __pthread_rwlock_destroy F
GLIBC_2.4 __pthread_rwlock_init F
-GLIBC_2.4 __pthread_rwlock_rdlock F
GLIBC_2.4 __pthread_rwlock_tryrdlock F
GLIBC_2.4 __pthread_rwlock_trywrlock F
-GLIBC_2.4 __pthread_rwlock_unlock F
-GLIBC_2.4 __pthread_rwlock_wrlock F
GLIBC_2.4 __pthread_unregister_cancel F
GLIBC_2.4 __pthread_unregister_cancel_restore F
GLIBC_2.4 __res_state F
@@ -115,13 +112,10 @@ GLIBC_2.4 pthread_mutexattr_setrobust_np F
GLIBC_2.4 pthread_mutexattr_settype F
GLIBC_2.4 pthread_rwlock_destroy F
GLIBC_2.4 pthread_rwlock_init F
-GLIBC_2.4 pthread_rwlock_rdlock F
GLIBC_2.4 pthread_rwlock_timedrdlock F
GLIBC_2.4 pthread_rwlock_timedwrlock F
GLIBC_2.4 pthread_rwlock_tryrdlock F
GLIBC_2.4 pthread_rwlock_trywrlock F
-GLIBC_2.4 pthread_rwlock_unlock F
-GLIBC_2.4 pthread_rwlock_wrlock F
GLIBC_2.4 pthread_rwlockattr_destroy F
GLIBC_2.4 pthread_rwlockattr_getkind_np F
GLIBC_2.4 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/arm/le/libc.abilist b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
index 16b39ebb076..4f6a8539679 100644
--- a/sysdeps/unix/sysv/linux/arm/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
@@ -166,6 +166,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 _Exit F
GLIBC_2.4 _IO_2_1_stderr_ D 0xa0
@@ -498,6 +501,9 @@ GLIBC_2.4 __pthread_cleanup_routine F
GLIBC_2.4 __pthread_getspecific F
GLIBC_2.4 __pthread_key_create F
GLIBC_2.4 __pthread_once F
+GLIBC_2.4 __pthread_rwlock_rdlock F
+GLIBC_2.4 __pthread_rwlock_unlock F
+GLIBC_2.4 __pthread_rwlock_wrlock F
GLIBC_2.4 __pthread_setspecific F
GLIBC_2.4 __pthread_unwind_next F
GLIBC_2.4 __ptsname_r_chk F
@@ -1566,6 +1572,9 @@ GLIBC_2.4 pthread_mutex_init F
GLIBC_2.4 pthread_mutex_lock F
GLIBC_2.4 pthread_mutex_unlock F
GLIBC_2.4 pthread_once F
+GLIBC_2.4 pthread_rwlock_rdlock F
+GLIBC_2.4 pthread_rwlock_unlock F
+GLIBC_2.4 pthread_rwlock_wrlock F
GLIBC_2.4 pthread_self F
GLIBC_2.4 pthread_setcancelstate F
GLIBC_2.4 pthread_setcanceltype F
diff --git a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist
index aab1587c4d4..c2705e70577 100644
--- a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist
@@ -49,11 +49,8 @@ GLIBC_2.4 __pthread_register_cancel F
GLIBC_2.4 __pthread_register_cancel_defer F
GLIBC_2.4 __pthread_rwlock_destroy F
GLIBC_2.4 __pthread_rwlock_init F
-GLIBC_2.4 __pthread_rwlock_rdlock F
GLIBC_2.4 __pthread_rwlock_tryrdlock F
GLIBC_2.4 __pthread_rwlock_trywrlock F
-GLIBC_2.4 __pthread_rwlock_unlock F
-GLIBC_2.4 __pthread_rwlock_wrlock F
GLIBC_2.4 __pthread_unregister_cancel F
GLIBC_2.4 __pthread_unregister_cancel_restore F
GLIBC_2.4 __res_state F
@@ -115,13 +112,10 @@ GLIBC_2.4 pthread_mutexattr_setrobust_np F
GLIBC_2.4 pthread_mutexattr_settype F
GLIBC_2.4 pthread_rwlock_destroy F
GLIBC_2.4 pthread_rwlock_init F
-GLIBC_2.4 pthread_rwlock_rdlock F
GLIBC_2.4 pthread_rwlock_timedrdlock F
GLIBC_2.4 pthread_rwlock_timedwrlock F
GLIBC_2.4 pthread_rwlock_tryrdlock F
GLIBC_2.4 pthread_rwlock_trywrlock F
-GLIBC_2.4 pthread_rwlock_unlock F
-GLIBC_2.4 pthread_rwlock_wrlock F
GLIBC_2.4 pthread_rwlockattr_destroy F
GLIBC_2.4 pthread_rwlockattr_getkind_np F
GLIBC_2.4 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/csky/libc.abilist b/sysdeps/unix/sysv/linux/csky/libc.abilist
index c218c64e236..67ab2433eb3 100644
--- a/sysdeps/unix/sysv/linux/csky/libc.abilist
+++ b/sysdeps/unix/sysv/linux/csky/libc.abilist
@@ -335,6 +335,9 @@ GLIBC_2.29 __pthread_cleanup_routine F
GLIBC_2.29 __pthread_getspecific F
GLIBC_2.29 __pthread_key_create F
GLIBC_2.29 __pthread_once F
+GLIBC_2.29 __pthread_rwlock_rdlock F
+GLIBC_2.29 __pthread_rwlock_unlock F
+GLIBC_2.29 __pthread_rwlock_wrlock F
GLIBC_2.29 __pthread_setspecific F
GLIBC_2.29 __pthread_unwind_next F
GLIBC_2.29 __ptsname_r_chk F
@@ -1451,6 +1454,9 @@ GLIBC_2.29 pthread_mutex_init F
GLIBC_2.29 pthread_mutex_lock F
GLIBC_2.29 pthread_mutex_unlock F
GLIBC_2.29 pthread_once F
+GLIBC_2.29 pthread_rwlock_rdlock F
+GLIBC_2.29 pthread_rwlock_unlock F
+GLIBC_2.29 pthread_rwlock_wrlock F
GLIBC_2.29 pthread_self F
GLIBC_2.29 pthread_setcancelstate F
GLIBC_2.29 pthread_setcanceltype F
@@ -2146,4 +2152,7 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/csky/libpthread.abilist b/sysdeps/unix/sysv/linux/csky/libpthread.abilist
index 966e4ccc039..dc56638a704 100644
--- a/sysdeps/unix/sysv/linux/csky/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/csky/libpthread.abilist
@@ -15,11 +15,8 @@ GLIBC_2.29 __pthread_register_cancel F
GLIBC_2.29 __pthread_register_cancel_defer F
GLIBC_2.29 __pthread_rwlock_destroy F
GLIBC_2.29 __pthread_rwlock_init F
-GLIBC_2.29 __pthread_rwlock_rdlock F
GLIBC_2.29 __pthread_rwlock_tryrdlock F
GLIBC_2.29 __pthread_rwlock_trywrlock F
-GLIBC_2.29 __pthread_rwlock_unlock F
-GLIBC_2.29 __pthread_rwlock_wrlock F
GLIBC_2.29 __pthread_unregister_cancel F
GLIBC_2.29 __pthread_unregister_cancel_restore F
GLIBC_2.29 __res_state F
@@ -98,13 +95,10 @@ GLIBC_2.29 pthread_mutexattr_setrobust_np F
GLIBC_2.29 pthread_mutexattr_settype F
GLIBC_2.29 pthread_rwlock_destroy F
GLIBC_2.29 pthread_rwlock_init F
-GLIBC_2.29 pthread_rwlock_rdlock F
GLIBC_2.29 pthread_rwlock_timedrdlock F
GLIBC_2.29 pthread_rwlock_timedwrlock F
GLIBC_2.29 pthread_rwlock_tryrdlock F
GLIBC_2.29 pthread_rwlock_trywrlock F
-GLIBC_2.29 pthread_rwlock_unlock F
-GLIBC_2.29 pthread_rwlock_wrlock F
GLIBC_2.29 pthread_rwlockattr_destroy F
GLIBC_2.29 pthread_rwlockattr_getkind_np F
GLIBC_2.29 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/hppa/libc.abilist b/sysdeps/unix/sysv/linux/hppa/libc.abilist
index 5927e3e883d..8a7f2a89630 100644
--- a/sysdeps/unix/sysv/linux/hppa/libc.abilist
+++ b/sysdeps/unix/sysv/linux/hppa/libc.abilist
@@ -359,6 +359,9 @@ GLIBC_2.2 __progname_full D 0x4
GLIBC_2.2 __pthread_getspecific F
GLIBC_2.2 __pthread_key_create F
GLIBC_2.2 __pthread_once F
+GLIBC_2.2 __pthread_rwlock_rdlock F
+GLIBC_2.2 __pthread_rwlock_unlock F
+GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pthread_setspecific F
GLIBC_2.2 __pwrite64 F
GLIBC_2.2 __rawmemchr F
@@ -1284,6 +1287,9 @@ GLIBC_2.2 pthread_mutex_init F
GLIBC_2.2 pthread_mutex_lock F
GLIBC_2.2 pthread_mutex_unlock F
GLIBC_2.2 pthread_once F
+GLIBC_2.2 pthread_rwlock_rdlock F
+GLIBC_2.2 pthread_rwlock_unlock F
+GLIBC_2.2 pthread_rwlock_wrlock F
GLIBC_2.2 pthread_self F
GLIBC_2.2 pthread_setcancelstate F
GLIBC_2.2 pthread_setcanceltype F
@@ -2104,6 +2110,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 __confstr_chk F
GLIBC_2.4 __fgets_chk F
diff --git a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist
index 3d49ee841f6..a87c1e2c98a 100644
--- a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist
@@ -20,11 +20,8 @@ GLIBC_2.2 __pthread_mutexattr_init F
GLIBC_2.2 __pthread_mutexattr_settype F
GLIBC_2.2 __pthread_rwlock_destroy F
GLIBC_2.2 __pthread_rwlock_init F
-GLIBC_2.2 __pthread_rwlock_rdlock F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
-GLIBC_2.2 __pthread_rwlock_unlock F
-GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __res_state F
GLIBC_2.2 flockfile F
GLIBC_2.2 ftrylockfile F
@@ -73,13 +70,10 @@ GLIBC_2.2 pthread_mutexattr_setpshared F
GLIBC_2.2 pthread_mutexattr_settype F
GLIBC_2.2 pthread_rwlock_destroy F
GLIBC_2.2 pthread_rwlock_init F
-GLIBC_2.2 pthread_rwlock_rdlock F
GLIBC_2.2 pthread_rwlock_timedrdlock F
GLIBC_2.2 pthread_rwlock_timedwrlock F
GLIBC_2.2 pthread_rwlock_tryrdlock F
GLIBC_2.2 pthread_rwlock_trywrlock F
-GLIBC_2.2 pthread_rwlock_unlock F
-GLIBC_2.2 pthread_rwlock_wrlock F
GLIBC_2.2 pthread_rwlockattr_destroy F
GLIBC_2.2 pthread_rwlockattr_getkind_np F
GLIBC_2.2 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/i386/libc.abilist b/sysdeps/unix/sysv/linux/i386/libc.abilist
index dbb5584c299..a531801535c 100644
--- a/sysdeps/unix/sysv/linux/i386/libc.abilist
+++ b/sysdeps/unix/sysv/linux/i386/libc.abilist
@@ -1557,6 +1557,9 @@ GLIBC_2.1 pread64 F
GLIBC_2.1 printf_size F
GLIBC_2.1 printf_size_info F
GLIBC_2.1 pthread_attr_init F
+GLIBC_2.1 pthread_rwlock_rdlock F
+GLIBC_2.1 pthread_rwlock_unlock F
+GLIBC_2.1 pthread_rwlock_wrlock F
GLIBC_2.1 ptsname F
GLIBC_2.1 ptsname_r F
GLIBC_2.1 putgrent F
@@ -1867,6 +1870,9 @@ GLIBC_2.2 __lxstat64 F
GLIBC_2.2 __nl_langinfo_l F
GLIBC_2.2 __open64 F
GLIBC_2.2 __pread64 F
+GLIBC_2.2 __pthread_rwlock_rdlock F
+GLIBC_2.2 __pthread_rwlock_unlock F
+GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pwrite64 F
GLIBC_2.2 __res_init F
GLIBC_2.2 __res_nclose F
@@ -2281,6 +2287,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 __confstr_chk F
GLIBC_2.4 __fgets_chk F
diff --git a/sysdeps/unix/sysv/linux/i386/libpthread.abilist b/sysdeps/unix/sysv/linux/i386/libpthread.abilist
index 4ca89778d60..c09c86ec05d 100644
--- a/sysdeps/unix/sysv/linux/i386/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/i386/libpthread.abilist
@@ -52,11 +52,8 @@ GLIBC_2.1 pthread_mutexattr_gettype F
GLIBC_2.1 pthread_mutexattr_settype F
GLIBC_2.1 pthread_rwlock_destroy F
GLIBC_2.1 pthread_rwlock_init F
-GLIBC_2.1 pthread_rwlock_rdlock F
GLIBC_2.1 pthread_rwlock_tryrdlock F
GLIBC_2.1 pthread_rwlock_trywrlock F
-GLIBC_2.1 pthread_rwlock_unlock F
-GLIBC_2.1 pthread_rwlock_wrlock F
GLIBC_2.1 pthread_rwlockattr_destroy F
GLIBC_2.1 pthread_rwlockattr_getkind_np F
GLIBC_2.1 pthread_rwlockattr_getpshared F
@@ -83,11 +80,8 @@ GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
GLIBC_2.2 __pthread_rwlock_destroy F
GLIBC_2.2 __pthread_rwlock_init F
-GLIBC_2.2 __pthread_rwlock_rdlock F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
-GLIBC_2.2 __pthread_rwlock_unlock F
-GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __res_state F
GLIBC_2.2 pthread_attr_getstack F
GLIBC_2.2 pthread_attr_setstack F
diff --git a/sysdeps/unix/sysv/linux/ia64/libc.abilist b/sysdeps/unix/sysv/linux/ia64/libc.abilist
index 6db4f887d52..bd8da6cbe4a 100644
--- a/sysdeps/unix/sysv/linux/ia64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/ia64/libc.abilist
@@ -363,6 +363,9 @@ GLIBC_2.2 __progname_full D 0x8
GLIBC_2.2 __pthread_getspecific F
GLIBC_2.2 __pthread_key_create F
GLIBC_2.2 __pthread_once F
+GLIBC_2.2 __pthread_rwlock_rdlock F
+GLIBC_2.2 __pthread_rwlock_unlock F
+GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pthread_setspecific F
GLIBC_2.2 __pwrite64 F
GLIBC_2.2 __rawmemchr F
@@ -1305,6 +1308,9 @@ GLIBC_2.2 pthread_mutex_init F
GLIBC_2.2 pthread_mutex_lock F
GLIBC_2.2 pthread_mutex_unlock F
GLIBC_2.2 pthread_once F
+GLIBC_2.2 pthread_rwlock_rdlock F
+GLIBC_2.2 pthread_rwlock_unlock F
+GLIBC_2.2 pthread_rwlock_wrlock F
GLIBC_2.2 pthread_self F
GLIBC_2.2 pthread_setcancelstate F
GLIBC_2.2 pthread_setcanceltype F
@@ -2138,6 +2144,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 __confstr_chk F
GLIBC_2.4 __fgets_chk F
diff --git a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist
index 1172ecba069..6cf7099df08 100644
--- a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist
@@ -20,11 +20,8 @@ GLIBC_2.2 __pthread_mutexattr_init F
GLIBC_2.2 __pthread_mutexattr_settype F
GLIBC_2.2 __pthread_rwlock_destroy F
GLIBC_2.2 __pthread_rwlock_init F
-GLIBC_2.2 __pthread_rwlock_rdlock F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
-GLIBC_2.2 __pthread_rwlock_unlock F
-GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __res_state F
GLIBC_2.2 flockfile F
GLIBC_2.2 ftrylockfile F
@@ -73,13 +70,10 @@ GLIBC_2.2 pthread_mutexattr_setpshared F
GLIBC_2.2 pthread_mutexattr_settype F
GLIBC_2.2 pthread_rwlock_destroy F
GLIBC_2.2 pthread_rwlock_init F
-GLIBC_2.2 pthread_rwlock_rdlock F
GLIBC_2.2 pthread_rwlock_timedrdlock F
GLIBC_2.2 pthread_rwlock_timedwrlock F
GLIBC_2.2 pthread_rwlock_tryrdlock F
GLIBC_2.2 pthread_rwlock_trywrlock F
-GLIBC_2.2 pthread_rwlock_unlock F
-GLIBC_2.2 pthread_rwlock_wrlock F
GLIBC_2.2 pthread_rwlockattr_destroy F
GLIBC_2.2 pthread_rwlockattr_getkind_np F
GLIBC_2.2 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
index 2419234f173..b63949baeb0 100644
--- a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
@@ -170,6 +170,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 _Exit F
GLIBC_2.4 _IO_2_1_stderr_ D 0x98
@@ -487,6 +490,9 @@ GLIBC_2.4 __pthread_cleanup_routine F
GLIBC_2.4 __pthread_getspecific F
GLIBC_2.4 __pthread_key_create F
GLIBC_2.4 __pthread_once F
+GLIBC_2.4 __pthread_rwlock_rdlock F
+GLIBC_2.4 __pthread_rwlock_unlock F
+GLIBC_2.4 __pthread_rwlock_wrlock F
GLIBC_2.4 __pthread_setspecific F
GLIBC_2.4 __pthread_unwind_next F
GLIBC_2.4 __ptsname_r_chk F
@@ -1549,6 +1555,9 @@ GLIBC_2.4 pthread_mutex_init F
GLIBC_2.4 pthread_mutex_lock F
GLIBC_2.4 pthread_mutex_unlock F
GLIBC_2.4 pthread_once F
+GLIBC_2.4 pthread_rwlock_rdlock F
+GLIBC_2.4 pthread_rwlock_unlock F
+GLIBC_2.4 pthread_rwlock_wrlock F
GLIBC_2.4 pthread_self F
GLIBC_2.4 pthread_setcancelstate F
GLIBC_2.4 pthread_setcanceltype F
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
index aab1587c4d4..c2705e70577 100644
--- a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
@@ -49,11 +49,8 @@ GLIBC_2.4 __pthread_register_cancel F
GLIBC_2.4 __pthread_register_cancel_defer F
GLIBC_2.4 __pthread_rwlock_destroy F
GLIBC_2.4 __pthread_rwlock_init F
-GLIBC_2.4 __pthread_rwlock_rdlock F
GLIBC_2.4 __pthread_rwlock_tryrdlock F
GLIBC_2.4 __pthread_rwlock_trywrlock F
-GLIBC_2.4 __pthread_rwlock_unlock F
-GLIBC_2.4 __pthread_rwlock_wrlock F
GLIBC_2.4 __pthread_unregister_cancel F
GLIBC_2.4 __pthread_unregister_cancel_restore F
GLIBC_2.4 __res_state F
@@ -115,13 +112,10 @@ GLIBC_2.4 pthread_mutexattr_setrobust_np F
GLIBC_2.4 pthread_mutexattr_settype F
GLIBC_2.4 pthread_rwlock_destroy F
GLIBC_2.4 pthread_rwlock_init F
-GLIBC_2.4 pthread_rwlock_rdlock F
GLIBC_2.4 pthread_rwlock_timedrdlock F
GLIBC_2.4 pthread_rwlock_timedwrlock F
GLIBC_2.4 pthread_rwlock_tryrdlock F
GLIBC_2.4 pthread_rwlock_trywrlock F
-GLIBC_2.4 pthread_rwlock_unlock F
-GLIBC_2.4 pthread_rwlock_wrlock F
GLIBC_2.4 pthread_rwlockattr_destroy F
GLIBC_2.4 pthread_rwlockattr_getkind_np F
GLIBC_2.4 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
index ca2953f1c38..a900e064744 100644
--- a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
@@ -1553,6 +1553,9 @@ GLIBC_2.1 pread64 F
GLIBC_2.1 printf_size F
GLIBC_2.1 printf_size_info F
GLIBC_2.1 pthread_attr_init F
+GLIBC_2.1 pthread_rwlock_rdlock F
+GLIBC_2.1 pthread_rwlock_unlock F
+GLIBC_2.1 pthread_rwlock_wrlock F
GLIBC_2.1 ptsname F
GLIBC_2.1 ptsname_r F
GLIBC_2.1 putgrent F
@@ -1823,6 +1826,9 @@ GLIBC_2.2 __lxstat64 F
GLIBC_2.2 __nl_langinfo_l F
GLIBC_2.2 __open64 F
GLIBC_2.2 __pread64 F
+GLIBC_2.2 __pthread_rwlock_rdlock F
+GLIBC_2.2 __pthread_rwlock_unlock F
+GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pwrite64 F
GLIBC_2.2 __res_init F
GLIBC_2.2 __res_nclose F
@@ -2224,6 +2230,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 __confstr_chk F
GLIBC_2.4 __fgets_chk F
diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
index 4ca89778d60..c09c86ec05d 100644
--- a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
@@ -52,11 +52,8 @@ GLIBC_2.1 pthread_mutexattr_gettype F
GLIBC_2.1 pthread_mutexattr_settype F
GLIBC_2.1 pthread_rwlock_destroy F
GLIBC_2.1 pthread_rwlock_init F
-GLIBC_2.1 pthread_rwlock_rdlock F
GLIBC_2.1 pthread_rwlock_tryrdlock F
GLIBC_2.1 pthread_rwlock_trywrlock F
-GLIBC_2.1 pthread_rwlock_unlock F
-GLIBC_2.1 pthread_rwlock_wrlock F
GLIBC_2.1 pthread_rwlockattr_destroy F
GLIBC_2.1 pthread_rwlockattr_getkind_np F
GLIBC_2.1 pthread_rwlockattr_getpshared F
@@ -83,11 +80,8 @@ GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
GLIBC_2.2 __pthread_rwlock_destroy F
GLIBC_2.2 __pthread_rwlock_init F
-GLIBC_2.2 __pthread_rwlock_rdlock F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
-GLIBC_2.2 __pthread_rwlock_unlock F
-GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __res_state F
GLIBC_2.2 pthread_attr_getstack F
GLIBC_2.2 pthread_attr_setstack F
diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
index 28b9e517998..4b92c809a60 100644
--- a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
@@ -343,6 +343,9 @@ GLIBC_2.18 __pthread_cleanup_routine F
GLIBC_2.18 __pthread_getspecific F
GLIBC_2.18 __pthread_key_create F
GLIBC_2.18 __pthread_once F
+GLIBC_2.18 __pthread_rwlock_rdlock F
+GLIBC_2.18 __pthread_rwlock_unlock F
+GLIBC_2.18 __pthread_rwlock_wrlock F
GLIBC_2.18 __pthread_setspecific F
GLIBC_2.18 __pthread_unwind_next F
GLIBC_2.18 __ptsname_r_chk F
@@ -1466,6 +1469,9 @@ GLIBC_2.18 pthread_mutex_init F
GLIBC_2.18 pthread_mutex_lock F
GLIBC_2.18 pthread_mutex_unlock F
GLIBC_2.18 pthread_once F
+GLIBC_2.18 pthread_rwlock_rdlock F
+GLIBC_2.18 pthread_rwlock_unlock F
+GLIBC_2.18 pthread_rwlock_wrlock F
GLIBC_2.18 pthread_self F
GLIBC_2.18 pthread_setcancelstate F
GLIBC_2.18 pthread_setcanceltype F
@@ -2197,4 +2203,7 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist
index 31e1b8f50ed..6b62c976d4c 100644
--- a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist
@@ -15,11 +15,8 @@ GLIBC_2.18 __pthread_register_cancel F
GLIBC_2.18 __pthread_register_cancel_defer F
GLIBC_2.18 __pthread_rwlock_destroy F
GLIBC_2.18 __pthread_rwlock_init F
-GLIBC_2.18 __pthread_rwlock_rdlock F
GLIBC_2.18 __pthread_rwlock_tryrdlock F
GLIBC_2.18 __pthread_rwlock_trywrlock F
-GLIBC_2.18 __pthread_rwlock_unlock F
-GLIBC_2.18 __pthread_rwlock_wrlock F
GLIBC_2.18 __pthread_unregister_cancel F
GLIBC_2.18 __pthread_unregister_cancel_restore F
GLIBC_2.18 __res_state F
@@ -85,13 +82,10 @@ GLIBC_2.18 pthread_mutexattr_setrobust_np F
GLIBC_2.18 pthread_mutexattr_settype F
GLIBC_2.18 pthread_rwlock_destroy F
GLIBC_2.18 pthread_rwlock_init F
-GLIBC_2.18 pthread_rwlock_rdlock F
GLIBC_2.18 pthread_rwlock_timedrdlock F
GLIBC_2.18 pthread_rwlock_timedwrlock F
GLIBC_2.18 pthread_rwlock_tryrdlock F
GLIBC_2.18 pthread_rwlock_trywrlock F
-GLIBC_2.18 pthread_rwlock_unlock F
-GLIBC_2.18 pthread_rwlock_wrlock F
GLIBC_2.18 pthread_rwlockattr_destroy F
GLIBC_2.18 pthread_rwlockattr_getkind_np F
GLIBC_2.18 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
index aa32af4ec01..cba37be963b 100644
--- a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
@@ -343,6 +343,9 @@ GLIBC_2.18 __pthread_cleanup_routine F
GLIBC_2.18 __pthread_getspecific F
GLIBC_2.18 __pthread_key_create F
GLIBC_2.18 __pthread_once F
+GLIBC_2.18 __pthread_rwlock_rdlock F
+GLIBC_2.18 __pthread_rwlock_unlock F
+GLIBC_2.18 __pthread_rwlock_wrlock F
GLIBC_2.18 __pthread_setspecific F
GLIBC_2.18 __pthread_unwind_next F
GLIBC_2.18 __ptsname_r_chk F
@@ -1466,6 +1469,9 @@ GLIBC_2.18 pthread_mutex_init F
GLIBC_2.18 pthread_mutex_lock F
GLIBC_2.18 pthread_mutex_unlock F
GLIBC_2.18 pthread_once F
+GLIBC_2.18 pthread_rwlock_rdlock F
+GLIBC_2.18 pthread_rwlock_unlock F
+GLIBC_2.18 pthread_rwlock_wrlock F
GLIBC_2.18 pthread_self F
GLIBC_2.18 pthread_setcancelstate F
GLIBC_2.18 pthread_setcanceltype F
@@ -2194,4 +2200,7 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist
index 31e1b8f50ed..6b62c976d4c 100644
--- a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist
@@ -15,11 +15,8 @@ GLIBC_2.18 __pthread_register_cancel F
GLIBC_2.18 __pthread_register_cancel_defer F
GLIBC_2.18 __pthread_rwlock_destroy F
GLIBC_2.18 __pthread_rwlock_init F
-GLIBC_2.18 __pthread_rwlock_rdlock F
GLIBC_2.18 __pthread_rwlock_tryrdlock F
GLIBC_2.18 __pthread_rwlock_trywrlock F
-GLIBC_2.18 __pthread_rwlock_unlock F
-GLIBC_2.18 __pthread_rwlock_wrlock F
GLIBC_2.18 __pthread_unregister_cancel F
GLIBC_2.18 __pthread_unregister_cancel_restore F
GLIBC_2.18 __res_state F
@@ -85,13 +82,10 @@ GLIBC_2.18 pthread_mutexattr_setrobust_np F
GLIBC_2.18 pthread_mutexattr_settype F
GLIBC_2.18 pthread_rwlock_destroy F
GLIBC_2.18 pthread_rwlock_init F
-GLIBC_2.18 pthread_rwlock_rdlock F
GLIBC_2.18 pthread_rwlock_timedrdlock F
GLIBC_2.18 pthread_rwlock_timedwrlock F
GLIBC_2.18 pthread_rwlock_tryrdlock F
GLIBC_2.18 pthread_rwlock_trywrlock F
-GLIBC_2.18 pthread_rwlock_unlock F
-GLIBC_2.18 pthread_rwlock_wrlock F
GLIBC_2.18 pthread_rwlockattr_destroy F
GLIBC_2.18 pthread_rwlockattr_getkind_np F
GLIBC_2.18 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
index 04d6813672a..2fb12516f0a 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
@@ -1527,6 +1527,9 @@ GLIBC_2.2 __nl_langinfo_l F
GLIBC_2.2 __open64 F
GLIBC_2.2 __poll F
GLIBC_2.2 __pread64 F
+GLIBC_2.2 __pthread_rwlock_rdlock F
+GLIBC_2.2 __pthread_rwlock_unlock F
+GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pwrite64 F
GLIBC_2.2 __rawmemchr F
GLIBC_2.2 __res_init F
@@ -1814,6 +1817,9 @@ GLIBC_2.2 pread64 F
GLIBC_2.2 printf_size F
GLIBC_2.2 printf_size_info F
GLIBC_2.2 pthread_attr_init F
+GLIBC_2.2 pthread_rwlock_rdlock F
+GLIBC_2.2 pthread_rwlock_unlock F
+GLIBC_2.2 pthread_rwlock_wrlock F
GLIBC_2.2 ptsname F
GLIBC_2.2 ptsname_r F
GLIBC_2.2 putgrent F
@@ -2187,6 +2193,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 __confstr_chk F
GLIBC_2.4 __fgets_chk F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
index e4897828f22..ecb2aabcd3e 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
@@ -49,11 +49,8 @@ GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
GLIBC_2.2 __pthread_rwlock_destroy F
GLIBC_2.2 __pthread_rwlock_init F
-GLIBC_2.2 __pthread_rwlock_rdlock F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
-GLIBC_2.2 __pthread_rwlock_unlock F
-GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __res_state F
GLIBC_2.2 pthread_attr_getguardsize F
GLIBC_2.2 pthread_attr_getstack F
@@ -81,13 +78,10 @@ GLIBC_2.2 pthread_mutexattr_setpshared F
GLIBC_2.2 pthread_mutexattr_settype F
GLIBC_2.2 pthread_rwlock_destroy F
GLIBC_2.2 pthread_rwlock_init F
-GLIBC_2.2 pthread_rwlock_rdlock F
GLIBC_2.2 pthread_rwlock_timedrdlock F
GLIBC_2.2 pthread_rwlock_timedwrlock F
GLIBC_2.2 pthread_rwlock_tryrdlock F
GLIBC_2.2 pthread_rwlock_trywrlock F
-GLIBC_2.2 pthread_rwlock_unlock F
-GLIBC_2.2 pthread_rwlock_wrlock F
GLIBC_2.2 pthread_rwlockattr_destroy F
GLIBC_2.2 pthread_rwlockattr_getkind_np F
GLIBC_2.2 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
index 935f87bbbcd..e9c8f34ef22 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
@@ -1525,6 +1525,9 @@ GLIBC_2.2 __nl_langinfo_l F
GLIBC_2.2 __open64 F
GLIBC_2.2 __poll F
GLIBC_2.2 __pread64 F
+GLIBC_2.2 __pthread_rwlock_rdlock F
+GLIBC_2.2 __pthread_rwlock_unlock F
+GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pwrite64 F
GLIBC_2.2 __rawmemchr F
GLIBC_2.2 __res_init F
@@ -1812,6 +1815,9 @@ GLIBC_2.2 pread64 F
GLIBC_2.2 printf_size F
GLIBC_2.2 printf_size_info F
GLIBC_2.2 pthread_attr_init F
+GLIBC_2.2 pthread_rwlock_rdlock F
+GLIBC_2.2 pthread_rwlock_unlock F
+GLIBC_2.2 pthread_rwlock_wrlock F
GLIBC_2.2 ptsname F
GLIBC_2.2 ptsname_r F
GLIBC_2.2 putgrent F
@@ -2185,6 +2191,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 __confstr_chk F
GLIBC_2.4 __fgets_chk F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
index e4897828f22..ecb2aabcd3e 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
@@ -49,11 +49,8 @@ GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
GLIBC_2.2 __pthread_rwlock_destroy F
GLIBC_2.2 __pthread_rwlock_init F
-GLIBC_2.2 __pthread_rwlock_rdlock F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
-GLIBC_2.2 __pthread_rwlock_unlock F
-GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __res_state F
GLIBC_2.2 pthread_attr_getguardsize F
GLIBC_2.2 pthread_attr_getstack F
@@ -81,13 +78,10 @@ GLIBC_2.2 pthread_mutexattr_setpshared F
GLIBC_2.2 pthread_mutexattr_settype F
GLIBC_2.2 pthread_rwlock_destroy F
GLIBC_2.2 pthread_rwlock_init F
-GLIBC_2.2 pthread_rwlock_rdlock F
GLIBC_2.2 pthread_rwlock_timedrdlock F
GLIBC_2.2 pthread_rwlock_timedwrlock F
GLIBC_2.2 pthread_rwlock_tryrdlock F
GLIBC_2.2 pthread_rwlock_trywrlock F
-GLIBC_2.2 pthread_rwlock_unlock F
-GLIBC_2.2 pthread_rwlock_wrlock F
GLIBC_2.2 pthread_rwlockattr_destroy F
GLIBC_2.2 pthread_rwlockattr_getkind_np F
GLIBC_2.2 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
index ff01b5abcf5..a2d981c7267 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
@@ -1525,6 +1525,9 @@ GLIBC_2.2 __nl_langinfo_l F
GLIBC_2.2 __open64 F
GLIBC_2.2 __poll F
GLIBC_2.2 __pread64 F
+GLIBC_2.2 __pthread_rwlock_rdlock F
+GLIBC_2.2 __pthread_rwlock_unlock F
+GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pwrite64 F
GLIBC_2.2 __rawmemchr F
GLIBC_2.2 __res_init F
@@ -1812,6 +1815,9 @@ GLIBC_2.2 pread64 F
GLIBC_2.2 printf_size F
GLIBC_2.2 printf_size_info F
GLIBC_2.2 pthread_attr_init F
+GLIBC_2.2 pthread_rwlock_rdlock F
+GLIBC_2.2 pthread_rwlock_unlock F
+GLIBC_2.2 pthread_rwlock_wrlock F
GLIBC_2.2 ptsname F
GLIBC_2.2 ptsname_r F
GLIBC_2.2 putgrent F
@@ -2193,6 +2199,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 __confstr_chk F
GLIBC_2.4 __fgets_chk F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
index 57ff176ce08..ffc935b34bc 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
@@ -1521,6 +1521,9 @@ GLIBC_2.2 __nl_langinfo_l F
GLIBC_2.2 __open64 F
GLIBC_2.2 __poll F
GLIBC_2.2 __pread64 F
+GLIBC_2.2 __pthread_rwlock_rdlock F
+GLIBC_2.2 __pthread_rwlock_unlock F
+GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pwrite64 F
GLIBC_2.2 __rawmemchr F
GLIBC_2.2 __res_init F
@@ -1808,6 +1811,9 @@ GLIBC_2.2 pread64 F
GLIBC_2.2 printf_size F
GLIBC_2.2 printf_size_info F
GLIBC_2.2 pthread_attr_init F
+GLIBC_2.2 pthread_rwlock_rdlock F
+GLIBC_2.2 pthread_rwlock_unlock F
+GLIBC_2.2 pthread_rwlock_wrlock F
GLIBC_2.2 ptsname F
GLIBC_2.2 ptsname_r F
GLIBC_2.2 putgrent F
@@ -2187,6 +2193,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 __confstr_chk F
GLIBC_2.4 __fgets_chk F
diff --git a/sysdeps/unix/sysv/linux/nios2/libc.abilist b/sysdeps/unix/sysv/linux/nios2/libc.abilist
index c8129ef984f..0dcf9f55e2e 100644
--- a/sysdeps/unix/sysv/linux/nios2/libc.abilist
+++ b/sysdeps/unix/sysv/linux/nios2/libc.abilist
@@ -380,6 +380,9 @@ GLIBC_2.21 __pthread_cleanup_routine F
GLIBC_2.21 __pthread_getspecific F
GLIBC_2.21 __pthread_key_create F
GLIBC_2.21 __pthread_once F
+GLIBC_2.21 __pthread_rwlock_rdlock F
+GLIBC_2.21 __pthread_rwlock_unlock F
+GLIBC_2.21 __pthread_rwlock_wrlock F
GLIBC_2.21 __pthread_setspecific F
GLIBC_2.21 __pthread_unwind_next F
GLIBC_2.21 __ptsname_r_chk F
@@ -1509,6 +1512,9 @@ GLIBC_2.21 pthread_mutex_init F
GLIBC_2.21 pthread_mutex_lock F
GLIBC_2.21 pthread_mutex_unlock F
GLIBC_2.21 pthread_once F
+GLIBC_2.21 pthread_rwlock_rdlock F
+GLIBC_2.21 pthread_rwlock_unlock F
+GLIBC_2.21 pthread_rwlock_wrlock F
GLIBC_2.21 pthread_self F
GLIBC_2.21 pthread_setcancelstate F
GLIBC_2.21 pthread_setcanceltype F
@@ -2236,4 +2242,7 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist
index 9080a695fc7..0281da14c6c 100644
--- a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist
@@ -15,11 +15,8 @@ GLIBC_2.21 __pthread_register_cancel F
GLIBC_2.21 __pthread_register_cancel_defer F
GLIBC_2.21 __pthread_rwlock_destroy F
GLIBC_2.21 __pthread_rwlock_init F
-GLIBC_2.21 __pthread_rwlock_rdlock F
GLIBC_2.21 __pthread_rwlock_tryrdlock F
GLIBC_2.21 __pthread_rwlock_trywrlock F
-GLIBC_2.21 __pthread_rwlock_unlock F
-GLIBC_2.21 __pthread_rwlock_wrlock F
GLIBC_2.21 __pthread_unregister_cancel F
GLIBC_2.21 __pthread_unregister_cancel_restore F
GLIBC_2.21 __res_state F
@@ -85,13 +82,10 @@ GLIBC_2.21 pthread_mutexattr_setrobust_np F
GLIBC_2.21 pthread_mutexattr_settype F
GLIBC_2.21 pthread_rwlock_destroy F
GLIBC_2.21 pthread_rwlock_init F
-GLIBC_2.21 pthread_rwlock_rdlock F
GLIBC_2.21 pthread_rwlock_timedrdlock F
GLIBC_2.21 pthread_rwlock_timedwrlock F
GLIBC_2.21 pthread_rwlock_tryrdlock F
GLIBC_2.21 pthread_rwlock_trywrlock F
-GLIBC_2.21 pthread_rwlock_unlock F
-GLIBC_2.21 pthread_rwlock_wrlock F
GLIBC_2.21 pthread_rwlockattr_destroy F
GLIBC_2.21 pthread_rwlockattr_getkind_np F
GLIBC_2.21 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
index 3a4b73cb2bd..1202487c8ec 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
@@ -1561,6 +1561,9 @@ GLIBC_2.1 pread64 F
GLIBC_2.1 printf_size F
GLIBC_2.1 printf_size_info F
GLIBC_2.1 pthread_attr_init F
+GLIBC_2.1 pthread_rwlock_rdlock F
+GLIBC_2.1 pthread_rwlock_unlock F
+GLIBC_2.1 pthread_rwlock_wrlock F
GLIBC_2.1 ptsname F
GLIBC_2.1 ptsname_r F
GLIBC_2.1 putgrent F
@@ -1829,6 +1832,9 @@ GLIBC_2.2 __lxstat64 F
GLIBC_2.2 __nl_langinfo_l F
GLIBC_2.2 __open64 F
GLIBC_2.2 __pread64 F
+GLIBC_2.2 __pthread_rwlock_rdlock F
+GLIBC_2.2 __pthread_rwlock_unlock F
+GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pwrite64 F
GLIBC_2.2 __res_init F
GLIBC_2.2 __res_nclose F
@@ -2251,6 +2257,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 _IO_fprintf F
GLIBC_2.4 _IO_printf F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
index f1387a8150e..2486a0d5f2f 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
@@ -52,11 +52,8 @@ GLIBC_2.1 pthread_mutexattr_gettype F
GLIBC_2.1 pthread_mutexattr_settype F
GLIBC_2.1 pthread_rwlock_destroy F
GLIBC_2.1 pthread_rwlock_init F
-GLIBC_2.1 pthread_rwlock_rdlock F
GLIBC_2.1 pthread_rwlock_tryrdlock F
GLIBC_2.1 pthread_rwlock_trywrlock F
-GLIBC_2.1 pthread_rwlock_unlock F
-GLIBC_2.1 pthread_rwlock_wrlock F
GLIBC_2.1 pthread_rwlockattr_destroy F
GLIBC_2.1 pthread_rwlockattr_getkind_np F
GLIBC_2.1 pthread_rwlockattr_getpshared F
@@ -83,11 +80,8 @@ GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
GLIBC_2.2 __pthread_rwlock_destroy F
GLIBC_2.2 __pthread_rwlock_init F
-GLIBC_2.2 __pthread_rwlock_rdlock F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
-GLIBC_2.2 __pthread_rwlock_unlock F
-GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __res_state F
GLIBC_2.2 pthread_attr_getstack F
GLIBC_2.2 pthread_attr_setstack F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
index 98059fe1188..3870013f98b 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
@@ -1561,6 +1561,9 @@ GLIBC_2.1 pread64 F
GLIBC_2.1 printf_size F
GLIBC_2.1 printf_size_info F
GLIBC_2.1 pthread_attr_init F
+GLIBC_2.1 pthread_rwlock_rdlock F
+GLIBC_2.1 pthread_rwlock_unlock F
+GLIBC_2.1 pthread_rwlock_wrlock F
GLIBC_2.1 ptsname F
GLIBC_2.1 ptsname_r F
GLIBC_2.1 putgrent F
@@ -1833,6 +1836,9 @@ GLIBC_2.2 __lxstat64 F
GLIBC_2.2 __nl_langinfo_l F
GLIBC_2.2 __open64 F
GLIBC_2.2 __pread64 F
+GLIBC_2.2 __pthread_rwlock_rdlock F
+GLIBC_2.2 __pthread_rwlock_unlock F
+GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pwrite64 F
GLIBC_2.2 __res_init F
GLIBC_2.2 __res_nclose F
@@ -2284,6 +2290,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 _IO_fprintf F
GLIBC_2.4 _IO_printf F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
index 3c23fc066c7..9fa941ab973 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
@@ -412,6 +412,9 @@ GLIBC_2.3 __progname_full D 0x8
GLIBC_2.3 __pthread_getspecific F
GLIBC_2.3 __pthread_key_create F
GLIBC_2.3 __pthread_once F
+GLIBC_2.3 __pthread_rwlock_rdlock F
+GLIBC_2.3 __pthread_rwlock_unlock F
+GLIBC_2.3 __pthread_rwlock_wrlock F
GLIBC_2.3 __pthread_setspecific F
GLIBC_2.3 __pwrite64 F
GLIBC_2.3 __rawmemchr F
@@ -1391,6 +1394,9 @@ GLIBC_2.3 pthread_mutex_init F
GLIBC_2.3 pthread_mutex_lock F
GLIBC_2.3 pthread_mutex_unlock F
GLIBC_2.3 pthread_once F
+GLIBC_2.3 pthread_rwlock_rdlock F
+GLIBC_2.3 pthread_rwlock_unlock F
+GLIBC_2.3 pthread_rwlock_wrlock F
GLIBC_2.3 pthread_self F
GLIBC_2.3 pthread_setcancelstate F
GLIBC_2.3 pthread_setcanceltype F
@@ -2106,6 +2112,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 _IO_fprintf F
GLIBC_2.4 _IO_printf F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
index 80b850ffefd..53f92e2c2ef 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
@@ -41,11 +41,8 @@ GLIBC_2.3 __pthread_mutexattr_init F
GLIBC_2.3 __pthread_mutexattr_settype F
GLIBC_2.3 __pthread_rwlock_destroy F
GLIBC_2.3 __pthread_rwlock_init F
-GLIBC_2.3 __pthread_rwlock_rdlock F
GLIBC_2.3 __pthread_rwlock_tryrdlock F
GLIBC_2.3 __pthread_rwlock_trywrlock F
-GLIBC_2.3 __pthread_rwlock_unlock F
-GLIBC_2.3 __pthread_rwlock_wrlock F
GLIBC_2.3 __res_state F
GLIBC_2.3 flockfile F
GLIBC_2.3 ftrylockfile F
@@ -93,13 +90,10 @@ GLIBC_2.3 pthread_mutexattr_setpshared F
GLIBC_2.3 pthread_mutexattr_settype F
GLIBC_2.3 pthread_rwlock_destroy F
GLIBC_2.3 pthread_rwlock_init F
-GLIBC_2.3 pthread_rwlock_rdlock F
GLIBC_2.3 pthread_rwlock_timedrdlock F
GLIBC_2.3 pthread_rwlock_timedwrlock F
GLIBC_2.3 pthread_rwlock_tryrdlock F
GLIBC_2.3 pthread_rwlock_trywrlock F
-GLIBC_2.3 pthread_rwlock_unlock F
-GLIBC_2.3 pthread_rwlock_wrlock F
GLIBC_2.3 pthread_rwlockattr_destroy F
GLIBC_2.3 pthread_rwlockattr_getkind_np F
GLIBC_2.3 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
index e254a0f3165..802b409879d 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
@@ -428,6 +428,9 @@ GLIBC_2.17 __pthread_cleanup_routine F
GLIBC_2.17 __pthread_getspecific F
GLIBC_2.17 __pthread_key_create F
GLIBC_2.17 __pthread_once F
+GLIBC_2.17 __pthread_rwlock_rdlock F
+GLIBC_2.17 __pthread_rwlock_unlock F
+GLIBC_2.17 __pthread_rwlock_wrlock F
GLIBC_2.17 __pthread_setspecific F
GLIBC_2.17 __pthread_unwind_next F
GLIBC_2.17 __ptsname_r_chk F
@@ -1552,6 +1555,9 @@ GLIBC_2.17 pthread_mutex_init F
GLIBC_2.17 pthread_mutex_lock F
GLIBC_2.17 pthread_mutex_unlock F
GLIBC_2.17 pthread_once F
+GLIBC_2.17 pthread_rwlock_rdlock F
+GLIBC_2.17 pthread_rwlock_unlock F
+GLIBC_2.17 pthread_rwlock_wrlock F
GLIBC_2.17 pthread_self F
GLIBC_2.17 pthread_setcancelstate F
GLIBC_2.17 pthread_setcanceltype F
@@ -2399,4 +2405,7 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
index 28f454bbf77..3f0247fcecd 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
@@ -15,11 +15,8 @@ GLIBC_2.17 __pthread_register_cancel F
GLIBC_2.17 __pthread_register_cancel_defer F
GLIBC_2.17 __pthread_rwlock_destroy F
GLIBC_2.17 __pthread_rwlock_init F
-GLIBC_2.17 __pthread_rwlock_rdlock F
GLIBC_2.17 __pthread_rwlock_tryrdlock F
GLIBC_2.17 __pthread_rwlock_trywrlock F
-GLIBC_2.17 __pthread_rwlock_unlock F
-GLIBC_2.17 __pthread_rwlock_wrlock F
GLIBC_2.17 __pthread_unregister_cancel F
GLIBC_2.17 __pthread_unregister_cancel_restore F
GLIBC_2.17 __res_state F
@@ -84,13 +81,10 @@ GLIBC_2.17 pthread_mutexattr_setrobust_np F
GLIBC_2.17 pthread_mutexattr_settype F
GLIBC_2.17 pthread_rwlock_destroy F
GLIBC_2.17 pthread_rwlock_init F
-GLIBC_2.17 pthread_rwlock_rdlock F
GLIBC_2.17 pthread_rwlock_timedrdlock F
GLIBC_2.17 pthread_rwlock_timedwrlock F
GLIBC_2.17 pthread_rwlock_tryrdlock F
GLIBC_2.17 pthread_rwlock_trywrlock F
-GLIBC_2.17 pthread_rwlock_unlock F
-GLIBC_2.17 pthread_rwlock_wrlock F
GLIBC_2.17 pthread_rwlockattr_destroy F
GLIBC_2.17 pthread_rwlockattr_getkind_np F
GLIBC_2.17 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
index 55c5acc87ee..f2fc047a1c3 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
@@ -328,6 +328,9 @@ GLIBC_2.33 __pthread_cleanup_routine F
GLIBC_2.33 __pthread_getspecific F
GLIBC_2.33 __pthread_key_create F
GLIBC_2.33 __pthread_once F
+GLIBC_2.33 __pthread_rwlock_rdlock F
+GLIBC_2.33 __pthread_rwlock_unlock F
+GLIBC_2.33 __pthread_rwlock_wrlock F
GLIBC_2.33 __pthread_setspecific F
GLIBC_2.33 __pthread_unwind_next F
GLIBC_2.33 __ptsname_r_chk F
@@ -1392,6 +1395,9 @@ GLIBC_2.33 pthread_mutex_init F
GLIBC_2.33 pthread_mutex_lock F
GLIBC_2.33 pthread_mutex_unlock F
GLIBC_2.33 pthread_once F
+GLIBC_2.33 pthread_rwlock_rdlock F
+GLIBC_2.33 pthread_rwlock_unlock F
+GLIBC_2.33 pthread_rwlock_wrlock F
GLIBC_2.33 pthread_self F
GLIBC_2.33 pthread_setcancelstate F
GLIBC_2.33 pthread_setcanceltype F
@@ -1964,4 +1970,7 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist
index 825c9b47e6b..e1fec91836b 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist
@@ -15,11 +15,8 @@ GLIBC_2.33 __pthread_register_cancel F
GLIBC_2.33 __pthread_register_cancel_defer F
GLIBC_2.33 __pthread_rwlock_destroy F
GLIBC_2.33 __pthread_rwlock_init F
-GLIBC_2.33 __pthread_rwlock_rdlock F
GLIBC_2.33 __pthread_rwlock_tryrdlock F
GLIBC_2.33 __pthread_rwlock_trywrlock F
-GLIBC_2.33 __pthread_rwlock_unlock F
-GLIBC_2.33 __pthread_rwlock_wrlock F
GLIBC_2.33 __pthread_unregister_cancel F
GLIBC_2.33 __pthread_unregister_cancel_restore F
GLIBC_2.33 __res_state F
@@ -103,13 +100,10 @@ GLIBC_2.33 pthread_rwlock_clockrdlock F
GLIBC_2.33 pthread_rwlock_clockwrlock F
GLIBC_2.33 pthread_rwlock_destroy F
GLIBC_2.33 pthread_rwlock_init F
-GLIBC_2.33 pthread_rwlock_rdlock F
GLIBC_2.33 pthread_rwlock_timedrdlock F
GLIBC_2.33 pthread_rwlock_timedwrlock F
GLIBC_2.33 pthread_rwlock_tryrdlock F
GLIBC_2.33 pthread_rwlock_trywrlock F
-GLIBC_2.33 pthread_rwlock_unlock F
-GLIBC_2.33 pthread_rwlock_wrlock F
GLIBC_2.33 pthread_rwlockattr_destroy F
GLIBC_2.33 pthread_rwlockattr_getkind_np F
GLIBC_2.33 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
index 7fb82d1f7e7..5e8e490cd2b 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
@@ -339,6 +339,9 @@ GLIBC_2.27 __pthread_cleanup_routine F
GLIBC_2.27 __pthread_getspecific F
GLIBC_2.27 __pthread_key_create F
GLIBC_2.27 __pthread_once F
+GLIBC_2.27 __pthread_rwlock_rdlock F
+GLIBC_2.27 __pthread_rwlock_unlock F
+GLIBC_2.27 __pthread_rwlock_wrlock F
GLIBC_2.27 __pthread_setspecific F
GLIBC_2.27 __pthread_unwind_next F
GLIBC_2.27 __ptsname_r_chk F
@@ -1454,6 +1457,9 @@ GLIBC_2.27 pthread_mutex_init F
GLIBC_2.27 pthread_mutex_lock F
GLIBC_2.27 pthread_mutex_unlock F
GLIBC_2.27 pthread_once F
+GLIBC_2.27 pthread_rwlock_rdlock F
+GLIBC_2.27 pthread_rwlock_unlock F
+GLIBC_2.27 pthread_rwlock_wrlock F
GLIBC_2.27 pthread_self F
GLIBC_2.27 pthread_setcancelstate F
GLIBC_2.27 pthread_setcanceltype F
@@ -2164,4 +2170,7 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
index 29bbe487aa9..ad63bee6ee0 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
@@ -15,11 +15,8 @@ GLIBC_2.27 __pthread_register_cancel F
GLIBC_2.27 __pthread_register_cancel_defer F
GLIBC_2.27 __pthread_rwlock_destroy F
GLIBC_2.27 __pthread_rwlock_init F
-GLIBC_2.27 __pthread_rwlock_rdlock F
GLIBC_2.27 __pthread_rwlock_tryrdlock F
GLIBC_2.27 __pthread_rwlock_trywrlock F
-GLIBC_2.27 __pthread_rwlock_unlock F
-GLIBC_2.27 __pthread_rwlock_wrlock F
GLIBC_2.27 __pthread_unregister_cancel F
GLIBC_2.27 __pthread_unregister_cancel_restore F
GLIBC_2.27 __res_state F
@@ -85,13 +82,10 @@ GLIBC_2.27 pthread_mutexattr_setrobust_np F
GLIBC_2.27 pthread_mutexattr_settype F
GLIBC_2.27 pthread_rwlock_destroy F
GLIBC_2.27 pthread_rwlock_init F
-GLIBC_2.27 pthread_rwlock_rdlock F
GLIBC_2.27 pthread_rwlock_timedrdlock F
GLIBC_2.27 pthread_rwlock_timedwrlock F
GLIBC_2.27 pthread_rwlock_tryrdlock F
GLIBC_2.27 pthread_rwlock_trywrlock F
-GLIBC_2.27 pthread_rwlock_unlock F
-GLIBC_2.27 pthread_rwlock_wrlock F
GLIBC_2.27 pthread_rwlockattr_destroy F
GLIBC_2.27 pthread_rwlockattr_getkind_np F
GLIBC_2.27 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
index a3ca2d98346..a2c2df7e5cb 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
@@ -1553,6 +1553,9 @@ GLIBC_2.1 pread64 F
GLIBC_2.1 printf_size F
GLIBC_2.1 printf_size_info F
GLIBC_2.1 pthread_attr_init F
+GLIBC_2.1 pthread_rwlock_rdlock F
+GLIBC_2.1 pthread_rwlock_unlock F
+GLIBC_2.1 pthread_rwlock_wrlock F
GLIBC_2.1 ptsname F
GLIBC_2.1 ptsname_r F
GLIBC_2.1 putgrent F
@@ -1827,6 +1830,9 @@ GLIBC_2.2 __lxstat64 F
GLIBC_2.2 __nl_langinfo_l F
GLIBC_2.2 __open64 F
GLIBC_2.2 __pread64 F
+GLIBC_2.2 __pthread_rwlock_rdlock F
+GLIBC_2.2 __pthread_rwlock_unlock F
+GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pwrite64 F
GLIBC_2.2 __res_init F
GLIBC_2.2 __res_nclose F
@@ -2249,6 +2255,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 _IO_fprintf F
GLIBC_2.4 _IO_printf F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
index 21e44313c85..9e9fba9281d 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
@@ -52,11 +52,8 @@ GLIBC_2.1 pthread_mutexattr_gettype F
GLIBC_2.1 pthread_mutexattr_settype F
GLIBC_2.1 pthread_rwlock_destroy F
GLIBC_2.1 pthread_rwlock_init F
-GLIBC_2.1 pthread_rwlock_rdlock F
GLIBC_2.1 pthread_rwlock_tryrdlock F
GLIBC_2.1 pthread_rwlock_trywrlock F
-GLIBC_2.1 pthread_rwlock_unlock F
-GLIBC_2.1 pthread_rwlock_wrlock F
GLIBC_2.1 pthread_rwlockattr_destroy F
GLIBC_2.1 pthread_rwlockattr_getkind_np F
GLIBC_2.1 pthread_rwlockattr_getpshared F
@@ -84,11 +81,8 @@ GLIBC_2.18 pthread_setattr_default_np F
GLIBC_2.19 __libpthread_version_placeholder F
GLIBC_2.2 __pthread_rwlock_destroy F
GLIBC_2.2 __pthread_rwlock_init F
-GLIBC_2.2 __pthread_rwlock_rdlock F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
-GLIBC_2.2 __pthread_rwlock_unlock F
-GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __res_state F
GLIBC_2.2 pthread_attr_getstack F
GLIBC_2.2 pthread_attr_setstack F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
index d72eb6df2c0..dc6ca8a9e71 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
@@ -373,6 +373,9 @@ GLIBC_2.2 __progname_full D 0x8
GLIBC_2.2 __pthread_getspecific F
GLIBC_2.2 __pthread_key_create F
GLIBC_2.2 __pthread_once F
+GLIBC_2.2 __pthread_rwlock_rdlock F
+GLIBC_2.2 __pthread_rwlock_unlock F
+GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pthread_setspecific F
GLIBC_2.2 __pwrite64 F
GLIBC_2.2 __rawmemchr F
@@ -1302,6 +1305,9 @@ GLIBC_2.2 pthread_mutex_init F
GLIBC_2.2 pthread_mutex_lock F
GLIBC_2.2 pthread_mutex_unlock F
GLIBC_2.2 pthread_once F
+GLIBC_2.2 pthread_rwlock_rdlock F
+GLIBC_2.2 pthread_rwlock_unlock F
+GLIBC_2.2 pthread_rwlock_wrlock F
GLIBC_2.2 pthread_self F
GLIBC_2.2 pthread_setcancelstate F
GLIBC_2.2 pthread_setcanceltype F
@@ -2142,6 +2148,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 _IO_fprintf F
GLIBC_2.4 _IO_printf F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
index ba1c4ed261e..c80e9e7906b 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
@@ -21,11 +21,8 @@ GLIBC_2.2 __pthread_mutexattr_init F
GLIBC_2.2 __pthread_mutexattr_settype F
GLIBC_2.2 __pthread_rwlock_destroy F
GLIBC_2.2 __pthread_rwlock_init F
-GLIBC_2.2 __pthread_rwlock_rdlock F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
-GLIBC_2.2 __pthread_rwlock_unlock F
-GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __res_state F
GLIBC_2.2 flockfile F
GLIBC_2.2 ftrylockfile F
@@ -74,13 +71,10 @@ GLIBC_2.2 pthread_mutexattr_setpshared F
GLIBC_2.2 pthread_mutexattr_settype F
GLIBC_2.2 pthread_rwlock_destroy F
GLIBC_2.2 pthread_rwlock_init F
-GLIBC_2.2 pthread_rwlock_rdlock F
GLIBC_2.2 pthread_rwlock_timedrdlock F
GLIBC_2.2 pthread_rwlock_timedwrlock F
GLIBC_2.2 pthread_rwlock_tryrdlock F
GLIBC_2.2 pthread_rwlock_trywrlock F
-GLIBC_2.2 pthread_rwlock_unlock F
-GLIBC_2.2 pthread_rwlock_wrlock F
GLIBC_2.2 pthread_rwlockattr_destroy F
GLIBC_2.2 pthread_rwlockattr_getkind_np F
GLIBC_2.2 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/sh/be/libc.abilist b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
index 113a31947d3..80a2c49c9e2 100644
--- a/sysdeps/unix/sysv/linux/sh/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
@@ -362,6 +362,9 @@ GLIBC_2.2 __progname_full D 0x4
GLIBC_2.2 __pthread_getspecific F
GLIBC_2.2 __pthread_key_create F
GLIBC_2.2 __pthread_once F
+GLIBC_2.2 __pthread_rwlock_rdlock F
+GLIBC_2.2 __pthread_rwlock_unlock F
+GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pthread_setspecific F
GLIBC_2.2 __pwrite64 F
GLIBC_2.2 __rawmemchr F
@@ -1288,6 +1291,9 @@ GLIBC_2.2 pthread_mutex_init F
GLIBC_2.2 pthread_mutex_lock F
GLIBC_2.2 pthread_mutex_unlock F
GLIBC_2.2 pthread_once F
+GLIBC_2.2 pthread_rwlock_rdlock F
+GLIBC_2.2 pthread_rwlock_unlock F
+GLIBC_2.2 pthread_rwlock_wrlock F
GLIBC_2.2 pthread_self F
GLIBC_2.2 pthread_setcancelstate F
GLIBC_2.2 pthread_setcanceltype F
@@ -2111,6 +2117,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 __confstr_chk F
GLIBC_2.4 __fgets_chk F
diff --git a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist
index 3d49ee841f6..a87c1e2c98a 100644
--- a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist
@@ -20,11 +20,8 @@ GLIBC_2.2 __pthread_mutexattr_init F
GLIBC_2.2 __pthread_mutexattr_settype F
GLIBC_2.2 __pthread_rwlock_destroy F
GLIBC_2.2 __pthread_rwlock_init F
-GLIBC_2.2 __pthread_rwlock_rdlock F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
-GLIBC_2.2 __pthread_rwlock_unlock F
-GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __res_state F
GLIBC_2.2 flockfile F
GLIBC_2.2 ftrylockfile F
@@ -73,13 +70,10 @@ GLIBC_2.2 pthread_mutexattr_setpshared F
GLIBC_2.2 pthread_mutexattr_settype F
GLIBC_2.2 pthread_rwlock_destroy F
GLIBC_2.2 pthread_rwlock_init F
-GLIBC_2.2 pthread_rwlock_rdlock F
GLIBC_2.2 pthread_rwlock_timedrdlock F
GLIBC_2.2 pthread_rwlock_timedwrlock F
GLIBC_2.2 pthread_rwlock_tryrdlock F
GLIBC_2.2 pthread_rwlock_trywrlock F
-GLIBC_2.2 pthread_rwlock_unlock F
-GLIBC_2.2 pthread_rwlock_wrlock F
GLIBC_2.2 pthread_rwlockattr_destroy F
GLIBC_2.2 pthread_rwlockattr_getkind_np F
GLIBC_2.2 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/sh/le/libc.abilist b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
index 18a78e2b8e6..cf26b71aef9 100644
--- a/sysdeps/unix/sysv/linux/sh/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
@@ -362,6 +362,9 @@ GLIBC_2.2 __progname_full D 0x4
GLIBC_2.2 __pthread_getspecific F
GLIBC_2.2 __pthread_key_create F
GLIBC_2.2 __pthread_once F
+GLIBC_2.2 __pthread_rwlock_rdlock F
+GLIBC_2.2 __pthread_rwlock_unlock F
+GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pthread_setspecific F
GLIBC_2.2 __pwrite64 F
GLIBC_2.2 __rawmemchr F
@@ -1288,6 +1291,9 @@ GLIBC_2.2 pthread_mutex_init F
GLIBC_2.2 pthread_mutex_lock F
GLIBC_2.2 pthread_mutex_unlock F
GLIBC_2.2 pthread_once F
+GLIBC_2.2 pthread_rwlock_rdlock F
+GLIBC_2.2 pthread_rwlock_unlock F
+GLIBC_2.2 pthread_rwlock_wrlock F
GLIBC_2.2 pthread_self F
GLIBC_2.2 pthread_setcancelstate F
GLIBC_2.2 pthread_setcanceltype F
@@ -2108,6 +2114,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 __confstr_chk F
GLIBC_2.4 __fgets_chk F
diff --git a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist
index 3d49ee841f6..a87c1e2c98a 100644
--- a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist
@@ -20,11 +20,8 @@ GLIBC_2.2 __pthread_mutexattr_init F
GLIBC_2.2 __pthread_mutexattr_settype F
GLIBC_2.2 __pthread_rwlock_destroy F
GLIBC_2.2 __pthread_rwlock_init F
-GLIBC_2.2 __pthread_rwlock_rdlock F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
-GLIBC_2.2 __pthread_rwlock_unlock F
-GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __res_state F
GLIBC_2.2 flockfile F
GLIBC_2.2 ftrylockfile F
@@ -73,13 +70,10 @@ GLIBC_2.2 pthread_mutexattr_setpshared F
GLIBC_2.2 pthread_mutexattr_settype F
GLIBC_2.2 pthread_rwlock_destroy F
GLIBC_2.2 pthread_rwlock_init F
-GLIBC_2.2 pthread_rwlock_rdlock F
GLIBC_2.2 pthread_rwlock_timedrdlock F
GLIBC_2.2 pthread_rwlock_timedwrlock F
GLIBC_2.2 pthread_rwlock_tryrdlock F
GLIBC_2.2 pthread_rwlock_trywrlock F
-GLIBC_2.2 pthread_rwlock_unlock F
-GLIBC_2.2 pthread_rwlock_wrlock F
GLIBC_2.2 pthread_rwlockattr_destroy F
GLIBC_2.2 pthread_rwlockattr_getkind_np F
GLIBC_2.2 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
index f5939321df0..322378dd4bb 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
@@ -1554,6 +1554,9 @@ GLIBC_2.1 pread64 F
GLIBC_2.1 printf_size F
GLIBC_2.1 printf_size_info F
GLIBC_2.1 pthread_attr_init F
+GLIBC_2.1 pthread_rwlock_rdlock F
+GLIBC_2.1 pthread_rwlock_unlock F
+GLIBC_2.1 pthread_rwlock_wrlock F
GLIBC_2.1 ptsname F
GLIBC_2.1 ptsname_r F
GLIBC_2.1 putgrent F
@@ -1825,6 +1828,9 @@ GLIBC_2.2 __lxstat64 F
GLIBC_2.2 __nl_langinfo_l F
GLIBC_2.2 __open64 F
GLIBC_2.2 __pread64 F
+GLIBC_2.2 __pthread_rwlock_rdlock F
+GLIBC_2.2 __pthread_rwlock_unlock F
+GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pwrite64 F
GLIBC_2.2 __res_init F
GLIBC_2.2 __res_nclose F
@@ -2240,6 +2246,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 _IO_fprintf F
GLIBC_2.4 _IO_printf F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
index a91b42133ba..5a9cc846aed 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
@@ -52,11 +52,8 @@ GLIBC_2.1 pthread_mutexattr_gettype F
GLIBC_2.1 pthread_mutexattr_settype F
GLIBC_2.1 pthread_rwlock_destroy F
GLIBC_2.1 pthread_rwlock_init F
-GLIBC_2.1 pthread_rwlock_rdlock F
GLIBC_2.1 pthread_rwlock_tryrdlock F
GLIBC_2.1 pthread_rwlock_trywrlock F
-GLIBC_2.1 pthread_rwlock_unlock F
-GLIBC_2.1 pthread_rwlock_wrlock F
GLIBC_2.1 pthread_rwlockattr_destroy F
GLIBC_2.1 pthread_rwlockattr_getkind_np F
GLIBC_2.1 pthread_rwlockattr_getpshared F
@@ -83,11 +80,8 @@ GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
GLIBC_2.2 __pthread_rwlock_destroy F
GLIBC_2.2 __pthread_rwlock_init F
-GLIBC_2.2 __pthread_rwlock_rdlock F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
-GLIBC_2.2 __pthread_rwlock_unlock F
-GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __res_state F
GLIBC_2.2 pthread_attr_getstack F
GLIBC_2.2 pthread_attr_setstack F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
index 33f6d03e46c..eeaa82fedbf 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
@@ -400,6 +400,9 @@ GLIBC_2.2 __progname_full D 0x8
GLIBC_2.2 __pthread_getspecific F
GLIBC_2.2 __pthread_key_create F
GLIBC_2.2 __pthread_once F
+GLIBC_2.2 __pthread_rwlock_rdlock F
+GLIBC_2.2 __pthread_rwlock_unlock F
+GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __pthread_setspecific F
GLIBC_2.2 __pwrite64 F
GLIBC_2.2 __rawmemchr F
@@ -1331,6 +1334,9 @@ GLIBC_2.2 pthread_mutex_init F
GLIBC_2.2 pthread_mutex_lock F
GLIBC_2.2 pthread_mutex_unlock F
GLIBC_2.2 pthread_once F
+GLIBC_2.2 pthread_rwlock_rdlock F
+GLIBC_2.2 pthread_rwlock_unlock F
+GLIBC_2.2 pthread_rwlock_wrlock F
GLIBC_2.2 pthread_self F
GLIBC_2.2 pthread_setcancelstate F
GLIBC_2.2 pthread_setcanceltype F
@@ -2159,6 +2165,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 __confstr_chk F
GLIBC_2.4 __fgets_chk F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
index 1172ecba069..6cf7099df08 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
@@ -20,11 +20,8 @@ GLIBC_2.2 __pthread_mutexattr_init F
GLIBC_2.2 __pthread_mutexattr_settype F
GLIBC_2.2 __pthread_rwlock_destroy F
GLIBC_2.2 __pthread_rwlock_init F
-GLIBC_2.2 __pthread_rwlock_rdlock F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
-GLIBC_2.2 __pthread_rwlock_unlock F
-GLIBC_2.2 __pthread_rwlock_wrlock F
GLIBC_2.2 __res_state F
GLIBC_2.2 flockfile F
GLIBC_2.2 ftrylockfile F
@@ -73,13 +70,10 @@ GLIBC_2.2 pthread_mutexattr_setpshared F
GLIBC_2.2 pthread_mutexattr_settype F
GLIBC_2.2 pthread_rwlock_destroy F
GLIBC_2.2 pthread_rwlock_init F
-GLIBC_2.2 pthread_rwlock_rdlock F
GLIBC_2.2 pthread_rwlock_timedrdlock F
GLIBC_2.2 pthread_rwlock_timedwrlock F
GLIBC_2.2 pthread_rwlock_tryrdlock F
GLIBC_2.2 pthread_rwlock_trywrlock F
-GLIBC_2.2 pthread_rwlock_unlock F
-GLIBC_2.2 pthread_rwlock_wrlock F
GLIBC_2.2 pthread_rwlockattr_destroy F
GLIBC_2.2 pthread_rwlockattr_getkind_np F
GLIBC_2.2 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
index 6d4ca0d88ea..dbce478dbb2 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
@@ -361,6 +361,9 @@ GLIBC_2.2.5 __progname_full D 0x8
GLIBC_2.2.5 __pthread_getspecific F
GLIBC_2.2.5 __pthread_key_create F
GLIBC_2.2.5 __pthread_once F
+GLIBC_2.2.5 __pthread_rwlock_rdlock F
+GLIBC_2.2.5 __pthread_rwlock_unlock F
+GLIBC_2.2.5 __pthread_rwlock_wrlock F
GLIBC_2.2.5 __pthread_setspecific F
GLIBC_2.2.5 __pwrite64 F
GLIBC_2.2.5 __rawmemchr F
@@ -1299,6 +1302,9 @@ GLIBC_2.2.5 pthread_mutex_init F
GLIBC_2.2.5 pthread_mutex_lock F
GLIBC_2.2.5 pthread_mutex_unlock F
GLIBC_2.2.5 pthread_once F
+GLIBC_2.2.5 pthread_rwlock_rdlock F
+GLIBC_2.2.5 pthread_rwlock_unlock F
+GLIBC_2.2.5 pthread_rwlock_wrlock F
GLIBC_2.2.5 pthread_self F
GLIBC_2.2.5 pthread_setcancelstate F
GLIBC_2.2.5 pthread_setcanceltype F
@@ -2120,6 +2126,9 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
GLIBC_2.4 __confstr_chk F
GLIBC_2.4 __fgets_chk F
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
index 5c486fc82ae..cc0a8aa6873 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
@@ -20,11 +20,8 @@ GLIBC_2.2.5 __pthread_mutexattr_init F
GLIBC_2.2.5 __pthread_mutexattr_settype F
GLIBC_2.2.5 __pthread_rwlock_destroy F
GLIBC_2.2.5 __pthread_rwlock_init F
-GLIBC_2.2.5 __pthread_rwlock_rdlock F
GLIBC_2.2.5 __pthread_rwlock_tryrdlock F
GLIBC_2.2.5 __pthread_rwlock_trywrlock F
-GLIBC_2.2.5 __pthread_rwlock_unlock F
-GLIBC_2.2.5 __pthread_rwlock_wrlock F
GLIBC_2.2.5 __res_state F
GLIBC_2.2.5 flockfile F
GLIBC_2.2.5 ftrylockfile F
@@ -73,13 +70,10 @@ GLIBC_2.2.5 pthread_mutexattr_setpshared F
GLIBC_2.2.5 pthread_mutexattr_settype F
GLIBC_2.2.5 pthread_rwlock_destroy F
GLIBC_2.2.5 pthread_rwlock_init F
-GLIBC_2.2.5 pthread_rwlock_rdlock F
GLIBC_2.2.5 pthread_rwlock_timedrdlock F
GLIBC_2.2.5 pthread_rwlock_timedwrlock F
GLIBC_2.2.5 pthread_rwlock_tryrdlock F
GLIBC_2.2.5 pthread_rwlock_trywrlock F
-GLIBC_2.2.5 pthread_rwlock_unlock F
-GLIBC_2.2.5 pthread_rwlock_wrlock F
GLIBC_2.2.5 pthread_rwlockattr_destroy F
GLIBC_2.2.5 pthread_rwlockattr_getkind_np F
GLIBC_2.2.5 pthread_rwlockattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
index d5b78b83cc7..fb659ae2c43 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
@@ -343,6 +343,9 @@ GLIBC_2.16 __pthread_cleanup_routine F
GLIBC_2.16 __pthread_getspecific F
GLIBC_2.16 __pthread_key_create F
GLIBC_2.16 __pthread_once F
+GLIBC_2.16 __pthread_rwlock_rdlock F
+GLIBC_2.16 __pthread_rwlock_unlock F
+GLIBC_2.16 __pthread_rwlock_wrlock F
GLIBC_2.16 __pthread_setspecific F
GLIBC_2.16 __pthread_unwind_next F
GLIBC_2.16 __ptsname_r_chk F
@@ -1471,6 +1474,9 @@ GLIBC_2.16 pthread_mutex_init F
GLIBC_2.16 pthread_mutex_lock F
GLIBC_2.16 pthread_mutex_unlock F
GLIBC_2.16 pthread_once F
+GLIBC_2.16 pthread_rwlock_rdlock F
+GLIBC_2.16 pthread_rwlock_unlock F
+GLIBC_2.16 pthread_rwlock_wrlock F
GLIBC_2.16 pthread_self F
GLIBC_2.16 pthread_setcancelstate F
GLIBC_2.16 pthread_setcanceltype F
@@ -2218,4 +2224,7 @@ GLIBC_2.34 pthread_key_delete F
GLIBC_2.34 pthread_kill F
GLIBC_2.34 pthread_mutex_consistent F
GLIBC_2.34 pthread_once F
+GLIBC_2.34 pthread_rwlock_rdlock F
+GLIBC_2.34 pthread_rwlock_unlock F
+GLIBC_2.34 pthread_rwlock_wrlock F
GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
index 5e57a2202d0..5a7c70f589f 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
@@ -15,11 +15,8 @@ GLIBC_2.16 __pthread_register_cancel F
GLIBC_2.16 __pthread_register_cancel_defer F
GLIBC_2.16 __pthread_rwlock_destroy F
GLIBC_2.16 __pthread_rwlock_init F
-GLIBC_2.16 __pthread_rwlock_rdlock F
GLIBC_2.16 __pthread_rwlock_tryrdlock F
GLIBC_2.16 __pthread_rwlock_trywrlock F
-GLIBC_2.16 __pthread_rwlock_unlock F
-GLIBC_2.16 __pthread_rwlock_wrlock F
GLIBC_2.16 __pthread_unregister_cancel F
GLIBC_2.16 __pthread_unregister_cancel_restore F
GLIBC_2.16 __res_state F
@@ -84,13 +81,10 @@ GLIBC_2.16 pthread_mutexattr_setrobust_np F
GLIBC_2.16 pthread_mutexattr_settype F
GLIBC_2.16 pthread_rwlock_destroy F
GLIBC_2.16 pthread_rwlock_init F
-GLIBC_2.16 pthread_rwlock_rdlock F
GLIBC_2.16 pthread_rwlock_timedrdlock F
GLIBC_2.16 pthread_rwlock_timedwrlock F
GLIBC_2.16 pthread_rwlock_tryrdlock F
GLIBC_2.16 pthread_rwlock_trywrlock F
-GLIBC_2.16 pthread_rwlock_unlock F
-GLIBC_2.16 pthread_rwlock_wrlock F
GLIBC_2.16 pthread_rwlockattr_destroy F
GLIBC_2.16 pthread_rwlockattr_getkind_np F
GLIBC_2.16 pthread_rwlockattr_getpshared F