[04/14] nptl: Move pthread_rwlock_init into libc
Commit Message
And __pthread_rwlock_init as a compatibility symbol.
__libc_rwlock_init is changed to call __pthread_rwlock_init directly.
The symbols were moved using scripts/move-symbol-to-libc.py.
---
nptl/Makefile | 2 +-
nptl/Versions | 4 ++--
nptl/pthread_rwlock_init.c | 20 ++++++++++++++++---
sysdeps/nptl/libc-lockP.h | 11 ++--------
sysdeps/unix/sysv/linux/aarch64/libc.abilist | 3 +++
.../sysv/linux/aarch64/libpthread.abilist | 2 --
sysdeps/unix/sysv/linux/alpha/libc.abilist | 3 +++
.../unix/sysv/linux/alpha/libpthread.abilist | 2 --
sysdeps/unix/sysv/linux/arc/libc.abilist | 3 +++
.../unix/sysv/linux/arc/libpthread.abilist | 2 --
sysdeps/unix/sysv/linux/arm/be/libc.abilist | 3 +++
.../unix/sysv/linux/arm/be/libpthread.abilist | 2 --
sysdeps/unix/sysv/linux/arm/le/libc.abilist | 3 +++
.../unix/sysv/linux/arm/le/libpthread.abilist | 2 --
sysdeps/unix/sysv/linux/csky/libc.abilist | 3 +++
.../unix/sysv/linux/csky/libpthread.abilist | 2 --
sysdeps/unix/sysv/linux/hppa/libc.abilist | 3 +++
.../unix/sysv/linux/hppa/libpthread.abilist | 2 --
sysdeps/unix/sysv/linux/i386/libc.abilist | 3 +++
.../unix/sysv/linux/i386/libpthread.abilist | 2 --
sysdeps/unix/sysv/linux/ia64/libc.abilist | 3 +++
.../unix/sysv/linux/ia64/libpthread.abilist | 2 --
.../sysv/linux/m68k/coldfire/libc.abilist | 3 +++
.../linux/m68k/coldfire/libpthread.abilist | 2 --
.../unix/sysv/linux/m68k/m680x0/libc.abilist | 3 +++
.../sysv/linux/m68k/m680x0/libpthread.abilist | 2 --
.../sysv/linux/microblaze/be/libc.abilist | 3 +++
.../linux/microblaze/be/libpthread.abilist | 2 --
.../sysv/linux/microblaze/le/libc.abilist | 3 +++
.../linux/microblaze/le/libpthread.abilist | 2 --
.../sysv/linux/mips/mips32/fpu/libc.abilist | 3 +++
.../sysv/linux/mips/mips32/libpthread.abilist | 2 --
.../sysv/linux/mips/mips32/nofpu/libc.abilist | 3 +++
.../sysv/linux/mips/mips64/libpthread.abilist | 2 --
.../sysv/linux/mips/mips64/n32/libc.abilist | 3 +++
.../sysv/linux/mips/mips64/n64/libc.abilist | 3 +++
sysdeps/unix/sysv/linux/nios2/libc.abilist | 3 +++
.../unix/sysv/linux/nios2/libpthread.abilist | 2 --
.../linux/powerpc/powerpc32/fpu/libc.abilist | 3 +++
.../powerpc/powerpc32/libpthread.abilist | 2 --
.../powerpc/powerpc32/nofpu/libc.abilist | 3 +++
.../linux/powerpc/powerpc64/be/libc.abilist | 3 +++
.../powerpc/powerpc64/be/libpthread.abilist | 2 --
.../linux/powerpc/powerpc64/le/libc.abilist | 3 +++
.../powerpc/powerpc64/le/libpthread.abilist | 2 --
.../unix/sysv/linux/riscv/rv32/libc.abilist | 3 +++
.../sysv/linux/riscv/rv32/libpthread.abilist | 2 --
.../unix/sysv/linux/riscv/rv64/libc.abilist | 3 +++
.../sysv/linux/riscv/rv64/libpthread.abilist | 2 --
.../unix/sysv/linux/s390/s390-32/libc.abilist | 3 +++
.../linux/s390/s390-32/libpthread.abilist | 2 --
.../unix/sysv/linux/s390/s390-64/libc.abilist | 3 +++
.../linux/s390/s390-64/libpthread.abilist | 2 --
sysdeps/unix/sysv/linux/sh/be/libc.abilist | 3 +++
.../unix/sysv/linux/sh/be/libpthread.abilist | 2 --
sysdeps/unix/sysv/linux/sh/le/libc.abilist | 3 +++
.../unix/sysv/linux/sh/le/libpthread.abilist | 2 --
.../sysv/linux/sparc/sparc32/libc.abilist | 3 +++
.../linux/sparc/sparc32/libpthread.abilist | 2 --
.../sysv/linux/sparc/sparc64/libc.abilist | 3 +++
.../linux/sparc/sparc64/libpthread.abilist | 2 --
.../unix/sysv/linux/x86_64/64/libc.abilist | 3 +++
.../sysv/linux/x86_64/64/libpthread.abilist | 2 --
.../unix/sysv/linux/x86_64/x32/libc.abilist | 3 +++
.../sysv/linux/x86_64/x32/libpthread.abilist | 2 --
65 files changed, 118 insertions(+), 73 deletions(-)
Comments
On 4/23/21 1:37 PM, Florian Weimer via Libc-alpha wrote:
> And __pthread_rwlock_init as a compatibility symbol.
Tested and reviewed on x86_64 and i686.
LGTM.
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Tested-by: Carlos O'Donell <carlos@redhat.com>
> __libc_rwlock_init is changed to call __pthread_rwlock_init directly.
OK.
> The symbols were moved using scripts/move-symbol-to-libc.py.
> ---
> nptl/Makefile | 2 +-
> nptl/Versions | 4 ++--
> nptl/pthread_rwlock_init.c | 20 ++++++++++++++++---
> sysdeps/nptl/libc-lockP.h | 11 ++--------
> sysdeps/unix/sysv/linux/aarch64/libc.abilist | 3 +++
> .../sysv/linux/aarch64/libpthread.abilist | 2 --
> sysdeps/unix/sysv/linux/alpha/libc.abilist | 3 +++
> .../unix/sysv/linux/alpha/libpthread.abilist | 2 --
> sysdeps/unix/sysv/linux/arc/libc.abilist | 3 +++
> .../unix/sysv/linux/arc/libpthread.abilist | 2 --
> sysdeps/unix/sysv/linux/arm/be/libc.abilist | 3 +++
> .../unix/sysv/linux/arm/be/libpthread.abilist | 2 --
> sysdeps/unix/sysv/linux/arm/le/libc.abilist | 3 +++
> .../unix/sysv/linux/arm/le/libpthread.abilist | 2 --
> sysdeps/unix/sysv/linux/csky/libc.abilist | 3 +++
> .../unix/sysv/linux/csky/libpthread.abilist | 2 --
> sysdeps/unix/sysv/linux/hppa/libc.abilist | 3 +++
> .../unix/sysv/linux/hppa/libpthread.abilist | 2 --
> sysdeps/unix/sysv/linux/i386/libc.abilist | 3 +++
> .../unix/sysv/linux/i386/libpthread.abilist | 2 --
> sysdeps/unix/sysv/linux/ia64/libc.abilist | 3 +++
> .../unix/sysv/linux/ia64/libpthread.abilist | 2 --
> .../sysv/linux/m68k/coldfire/libc.abilist | 3 +++
> .../linux/m68k/coldfire/libpthread.abilist | 2 --
> .../unix/sysv/linux/m68k/m680x0/libc.abilist | 3 +++
> .../sysv/linux/m68k/m680x0/libpthread.abilist | 2 --
> .../sysv/linux/microblaze/be/libc.abilist | 3 +++
> .../linux/microblaze/be/libpthread.abilist | 2 --
> .../sysv/linux/microblaze/le/libc.abilist | 3 +++
> .../linux/microblaze/le/libpthread.abilist | 2 --
> .../sysv/linux/mips/mips32/fpu/libc.abilist | 3 +++
> .../sysv/linux/mips/mips32/libpthread.abilist | 2 --
> .../sysv/linux/mips/mips32/nofpu/libc.abilist | 3 +++
> .../sysv/linux/mips/mips64/libpthread.abilist | 2 --
> .../sysv/linux/mips/mips64/n32/libc.abilist | 3 +++
> .../sysv/linux/mips/mips64/n64/libc.abilist | 3 +++
> sysdeps/unix/sysv/linux/nios2/libc.abilist | 3 +++
> .../unix/sysv/linux/nios2/libpthread.abilist | 2 --
> .../linux/powerpc/powerpc32/fpu/libc.abilist | 3 +++
> .../powerpc/powerpc32/libpthread.abilist | 2 --
> .../powerpc/powerpc32/nofpu/libc.abilist | 3 +++
> .../linux/powerpc/powerpc64/be/libc.abilist | 3 +++
> .../powerpc/powerpc64/be/libpthread.abilist | 2 --
> .../linux/powerpc/powerpc64/le/libc.abilist | 3 +++
> .../powerpc/powerpc64/le/libpthread.abilist | 2 --
> .../unix/sysv/linux/riscv/rv32/libc.abilist | 3 +++
> .../sysv/linux/riscv/rv32/libpthread.abilist | 2 --
> .../unix/sysv/linux/riscv/rv64/libc.abilist | 3 +++
> .../sysv/linux/riscv/rv64/libpthread.abilist | 2 --
> .../unix/sysv/linux/s390/s390-32/libc.abilist | 3 +++
> .../linux/s390/s390-32/libpthread.abilist | 2 --
> .../unix/sysv/linux/s390/s390-64/libc.abilist | 3 +++
> .../linux/s390/s390-64/libpthread.abilist | 2 --
> sysdeps/unix/sysv/linux/sh/be/libc.abilist | 3 +++
> .../unix/sysv/linux/sh/be/libpthread.abilist | 2 --
> sysdeps/unix/sysv/linux/sh/le/libc.abilist | 3 +++
> .../unix/sysv/linux/sh/le/libpthread.abilist | 2 --
> .../sysv/linux/sparc/sparc32/libc.abilist | 3 +++
> .../linux/sparc/sparc32/libpthread.abilist | 2 --
> .../sysv/linux/sparc/sparc64/libc.abilist | 3 +++
> .../linux/sparc/sparc64/libpthread.abilist | 2 --
> .../unix/sysv/linux/x86_64/64/libc.abilist | 3 +++
> .../sysv/linux/x86_64/64/libpthread.abilist | 2 --
> .../unix/sysv/linux/x86_64/x32/libc.abilist | 3 +++
> .../sysv/linux/x86_64/x32/libpthread.abilist | 2 --
> 65 files changed, 118 insertions(+), 73 deletions(-)
>
> diff --git a/nptl/Makefile b/nptl/Makefile
> index 37c6513f68..e41459c571 100644
> --- a/nptl/Makefile
> +++ b/nptl/Makefile
> @@ -123,6 +123,7 @@ routines = \
> pthread_rwlock_clockrdlock \
> pthread_rwlock_clockwrlock \
> pthread_rwlock_destroy \
> + pthread_rwlock_init \
> pthread_rwlock_rdlock \
> pthread_rwlock_unlock \
> pthread_rwlock_wrlock \
> @@ -181,7 +182,6 @@ libpthread-routines = \
> pthread_getname \
> pthread_join \
> pthread_join_common \
> - pthread_rwlock_init \
> pthread_rwlock_timedrdlock \
> pthread_rwlock_timedwrlock \
> pthread_rwlock_tryrdlock \
> diff --git a/nptl/Versions b/nptl/Versions
> index 9232a19227..72d20e2117 100644
> --- a/nptl/Versions
> +++ b/nptl/Versions
> @@ -67,12 +67,14 @@ libc {
> pthread_mutexattr_gettype;
> pthread_mutexattr_settype;
> pthread_rwlock_destroy;
> + pthread_rwlock_init;
> pthread_rwlock_rdlock;
> pthread_rwlock_unlock;
> pthread_rwlock_wrlock;
> }
> GLIBC_2.2 {
> __pthread_rwlock_destroy;
> + __pthread_rwlock_init;
> __pthread_rwlock_rdlock;
> __pthread_rwlock_unlock;
> __pthread_rwlock_wrlock;
> @@ -280,7 +282,6 @@ libpthread {
> pthread_attr_setstacksize;
> pthread_create;
> pthread_getconcurrency;
> - pthread_rwlock_init;
> pthread_rwlock_tryrdlock;
> pthread_rwlock_trywrlock;
> pthread_rwlockattr_destroy;
> @@ -309,7 +310,6 @@ libpthread {
> }
>
> GLIBC_2.2 {
> - __pthread_rwlock_init;
> __pthread_rwlock_tryrdlock;
> __pthread_rwlock_trywrlock;
> pthread_attr_getstack;
> diff --git a/nptl/pthread_rwlock_init.c b/nptl/pthread_rwlock_init.c
> index c7d8fef687..db8ebee504 100644
> --- a/nptl/pthread_rwlock_init.c
> +++ b/nptl/pthread_rwlock_init.c
> @@ -19,7 +19,7 @@
> #include "pthreadP.h"
> #include <string.h>
> #include <pthread-offsets.h>
> -
> +#include <shlib-compat.h>
>
> static const struct pthread_rwlockattr default_rwlockattr =
> {
> @@ -30,7 +30,7 @@ static const struct pthread_rwlockattr default_rwlockattr =
>
> /* See pthread_rwlock_common.c. */
> int
> -__pthread_rwlock_init (pthread_rwlock_t *rwlock,
> +___pthread_rwlock_init (pthread_rwlock_t *rwlock,
> const pthread_rwlockattr_t *attr)
> {
> ASSERT_TYPE_SIZE (pthread_rwlock_t, __SIZEOF_PTHREAD_RWLOCK_T);
> @@ -55,4 +55,18 @@ __pthread_rwlock_init (pthread_rwlock_t *rwlock,
>
> return 0;
> }
> -strong_alias (__pthread_rwlock_init, pthread_rwlock_init)
> +versioned_symbol (libc, ___pthread_rwlock_init, pthread_rwlock_init,
> + GLIBC_2_34);
> +libc_hidden_ver (___pthread_rwlock_init, __pthread_rwlock_init)
> +#ifndef SHARED
> +strong_alias (___pthread_rwlock_init, __pthread_rwlock_init)
> +#endif
> +
> +#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_1, GLIBC_2_34)
> +compat_symbol (libpthread, ___pthread_rwlock_init, pthread_rwlock_init,
> + GLIBC_2_1);
> +#endif
> +#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_2, GLIBC_2_34)
> +compat_symbol (libpthread, ___pthread_rwlock_init, __pthread_rwlock_init,
> + GLIBC_2_2);
> +#endif
> diff --git a/sysdeps/nptl/libc-lockP.h b/sysdeps/nptl/libc-lockP.h
> index 07ead8fb9f..31ecc4a2c1 100644
> --- a/sysdeps/nptl/libc-lockP.h
> +++ b/sysdeps/nptl/libc-lockP.h
> @@ -114,14 +114,7 @@ _Static_assert (LLL_LOCK_INITIALIZER == 0, "LLL_LOCK_INITIALIZER != 0");
> #else
> # define __libc_lock_init(NAME) __pthread_mutex_init (&(NAME))
> #endif
> -#if defined SHARED && IS_IN (libc)
> -/* ((NAME) = (__libc_rwlock_t) PTHREAD_RWLOCK_INITIALIZER) is inefficient. */
> -# define __libc_rwlock_init(NAME) \
> - ((void) __builtin_memset (&(NAME), '\0', sizeof (NAME)))
> -#else
> -# define __libc_rwlock_init(NAME) \
> - __libc_maybe_call (__pthread_rwlock_init, (&(NAME), NULL), 0)
> -#endif
> +#define __libc_rwlock_init(NAME) __pthread_rwlock_init (&(NAME), NULL)
>
> /* Finalize the named lock variable, which must be locked. It cannot be
> used again until __libc_lock_init is called again on it. This must be
> @@ -267,6 +260,7 @@ extern int __pthread_mutexattr_settype (pthread_mutexattr_t *__attr,
>
> extern int __pthread_rwlock_init (pthread_rwlock_t *__rwlock,
> const pthread_rwlockattr_t *__attr);
> +libc_hidden_proto (__pthread_rwlock_init)
>
> extern int __pthread_rwlock_destroy (pthread_rwlock_t *__rwlock);
>
> @@ -299,7 +293,6 @@ weak_extern (__pthread_mutex_trylock)
> weak_extern (__pthread_mutexattr_init)
> weak_extern (__pthread_mutexattr_destroy)
> weak_extern (__pthread_mutexattr_settype)
> -weak_extern (__pthread_rwlock_init)
> weak_extern (__pthread_rwlock_tryrdlock)
> weak_extern (__pthread_rwlock_trywrlock)
> weak_extern (__pthread_initialize)
> diff --git a/sysdeps/unix/sysv/linux/aarch64/libc.abilist b/sysdeps/unix/sysv/linux/aarch64/libc.abilist
> index 8e7de61692..49538b3773 100644
> --- a/sysdeps/unix/sysv/linux/aarch64/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/aarch64/libc.abilist
> @@ -351,6 +351,7 @@ GLIBC_2.17 __pthread_mutexattr_init F
> GLIBC_2.17 __pthread_mutexattr_settype F
> GLIBC_2.17 __pthread_once 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_unlock F
> GLIBC_2.17 __pthread_rwlock_wrlock F
> @@ -1502,6 +1503,7 @@ GLIBC_2.17 pthread_mutexattr_setrobust_np F
> GLIBC_2.17 pthread_mutexattr_settype F
> GLIBC_2.17 pthread_once 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_unlock F
> GLIBC_2.17 pthread_rwlock_wrlock F
> @@ -2285,6 +2287,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist
> index ebdbdfa867..c6dee0cc25 100644
> --- a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist
> @@ -4,7 +4,6 @@ GLIBC_2.17 _IO_funlockfile F
> GLIBC_2.17 __errno_location F
> GLIBC_2.17 __pthread_register_cancel F
> GLIBC_2.17 __pthread_register_cancel_defer F
> -GLIBC_2.17 __pthread_rwlock_init F
> GLIBC_2.17 __pthread_rwlock_tryrdlock F
> GLIBC_2.17 __pthread_rwlock_trywrlock F
> GLIBC_2.17 __pthread_unregister_cancel F
> @@ -35,7 +34,6 @@ GLIBC_2.17 pthread_getconcurrency F
> GLIBC_2.17 pthread_getcpuclockid F
> GLIBC_2.17 pthread_getname_np F
> GLIBC_2.17 pthread_join F
> -GLIBC_2.17 pthread_rwlock_init F
> GLIBC_2.17 pthread_rwlock_timedrdlock F
> GLIBC_2.17 pthread_rwlock_timedwrlock F
> GLIBC_2.17 pthread_rwlock_tryrdlock F
> diff --git a/sysdeps/unix/sysv/linux/alpha/libc.abilist b/sysdeps/unix/sysv/linux/alpha/libc.abilist
> index 396c786557..6336e2dd35 100644
> --- a/sysdeps/unix/sysv/linux/alpha/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/alpha/libc.abilist
> @@ -1607,6 +1607,7 @@ GLIBC_2.1 pthread_attr_init F
> 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_unlock F
> GLIBC_2.1 pthread_rwlock_wrlock F
> @@ -1887,6 +1888,7 @@ GLIBC_2.2 __nl_langinfo_l F
> GLIBC_2.2 __open64 F
> GLIBC_2.2 __pread64 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_unlock F
> GLIBC_2.2 __pthread_rwlock_wrlock F
> @@ -2366,6 +2368,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist
> index b80868c5da..0189fc6a88 100644
> --- a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist
> @@ -24,7 +24,6 @@ GLIBC_2.1 pthread_attr_setstackaddr F
> GLIBC_2.1 pthread_attr_setstacksize F
> GLIBC_2.1 pthread_create F
> GLIBC_2.1 pthread_getconcurrency F
> -GLIBC_2.1 pthread_rwlock_init F
> GLIBC_2.1 pthread_rwlock_tryrdlock F
> GLIBC_2.1 pthread_rwlock_trywrlock F
> GLIBC_2.1 pthread_rwlockattr_destroy F
> @@ -49,7 +48,6 @@ GLIBC_2.12 pthread_getname_np F
> GLIBC_2.12 pthread_setname_np F
> GLIBC_2.18 pthread_getattr_default_np F
> GLIBC_2.18 pthread_setattr_default_np F
> -GLIBC_2.2 __pthread_rwlock_init F
> GLIBC_2.2 __pthread_rwlock_tryrdlock F
> GLIBC_2.2 __pthread_rwlock_trywrlock F
> GLIBC_2.2 pthread_attr_getstack F
> diff --git a/sysdeps/unix/sysv/linux/arc/libc.abilist b/sysdeps/unix/sysv/linux/arc/libc.abilist
> index 832ac4e217..a5fff26d3a 100644
> --- a/sysdeps/unix/sysv/linux/arc/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/arc/libc.abilist
> @@ -340,6 +340,7 @@ GLIBC_2.32 __pthread_mutexattr_init F
> GLIBC_2.32 __pthread_mutexattr_settype F
> GLIBC_2.32 __pthread_once 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_unlock F
> GLIBC_2.32 __pthread_rwlock_wrlock F
> @@ -1432,6 +1433,7 @@ GLIBC_2.32 pthread_once F
> 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_unlock F
> GLIBC_2.32 pthread_rwlock_wrlock F
> @@ -2044,6 +2046,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/arc/libpthread.abilist b/sysdeps/unix/sysv/linux/arc/libpthread.abilist
> index 0d819a63b1..d71f38bf24 100644
> --- a/sysdeps/unix/sysv/linux/arc/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/arc/libpthread.abilist
> @@ -4,7 +4,6 @@ GLIBC_2.32 _IO_funlockfile F
> GLIBC_2.32 __errno_location F
> GLIBC_2.32 __pthread_register_cancel F
> GLIBC_2.32 __pthread_register_cancel_defer F
> -GLIBC_2.32 __pthread_rwlock_init F
> GLIBC_2.32 __pthread_rwlock_tryrdlock F
> GLIBC_2.32 __pthread_rwlock_trywrlock F
> GLIBC_2.32 __pthread_unregister_cancel F
> @@ -50,7 +49,6 @@ GLIBC_2.32 pthread_getconcurrency F
> GLIBC_2.32 pthread_getcpuclockid F
> GLIBC_2.32 pthread_getname_np F
> GLIBC_2.32 pthread_join F
> -GLIBC_2.32 pthread_rwlock_init F
> GLIBC_2.32 pthread_rwlock_timedrdlock F
> GLIBC_2.32 pthread_rwlock_timedwrlock F
> GLIBC_2.32 pthread_rwlock_tryrdlock F
> diff --git a/sysdeps/unix/sysv/linux/arm/be/libc.abilist b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
> index dcba73cb45..6595cad027 100644
> --- a/sysdeps/unix/sysv/linux/arm/be/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
> @@ -207,6 +207,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> @@ -556,6 +557,7 @@ GLIBC_2.4 __pthread_mutexattr_init F
> GLIBC_2.4 __pthread_mutexattr_settype F
> GLIBC_2.4 __pthread_once 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_unlock F
> GLIBC_2.4 __pthread_rwlock_wrlock F
> @@ -1651,6 +1653,7 @@ GLIBC_2.4 pthread_mutexattr_setrobust_np F
> GLIBC_2.4 pthread_mutexattr_settype F
> GLIBC_2.4 pthread_once 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_unlock F
> GLIBC_2.4 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist
> index 85d9816c4e..1340d32c7f 100644
> --- a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist
> @@ -33,7 +33,6 @@ GLIBC_2.4 __errno_location F
> GLIBC_2.4 __libpthread_version_placeholder F
> GLIBC_2.4 __pthread_register_cancel F
> GLIBC_2.4 __pthread_register_cancel_defer F
> -GLIBC_2.4 __pthread_rwlock_init F
> GLIBC_2.4 __pthread_rwlock_tryrdlock F
> GLIBC_2.4 __pthread_rwlock_trywrlock F
> GLIBC_2.4 __pthread_unregister_cancel F
> @@ -63,7 +62,6 @@ GLIBC_2.4 pthread_detach F
> GLIBC_2.4 pthread_getconcurrency F
> GLIBC_2.4 pthread_getcpuclockid F
> GLIBC_2.4 pthread_join F
> -GLIBC_2.4 pthread_rwlock_init F
> GLIBC_2.4 pthread_rwlock_timedrdlock F
> GLIBC_2.4 pthread_rwlock_timedwrlock F
> GLIBC_2.4 pthread_rwlock_tryrdlock F
> diff --git a/sysdeps/unix/sysv/linux/arm/le/libc.abilist b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
> index d401b85fc9..f4dbe63497 100644
> --- a/sysdeps/unix/sysv/linux/arm/le/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
> @@ -204,6 +204,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> @@ -553,6 +554,7 @@ GLIBC_2.4 __pthread_mutexattr_init F
> GLIBC_2.4 __pthread_mutexattr_settype F
> GLIBC_2.4 __pthread_once 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_unlock F
> GLIBC_2.4 __pthread_rwlock_wrlock F
> @@ -1648,6 +1650,7 @@ GLIBC_2.4 pthread_mutexattr_setrobust_np F
> GLIBC_2.4 pthread_mutexattr_settype F
> GLIBC_2.4 pthread_once 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_unlock F
> GLIBC_2.4 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist
> index 85d9816c4e..1340d32c7f 100644
> --- a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist
> @@ -33,7 +33,6 @@ GLIBC_2.4 __errno_location F
> GLIBC_2.4 __libpthread_version_placeholder F
> GLIBC_2.4 __pthread_register_cancel F
> GLIBC_2.4 __pthread_register_cancel_defer F
> -GLIBC_2.4 __pthread_rwlock_init F
> GLIBC_2.4 __pthread_rwlock_tryrdlock F
> GLIBC_2.4 __pthread_rwlock_trywrlock F
> GLIBC_2.4 __pthread_unregister_cancel F
> @@ -63,7 +62,6 @@ GLIBC_2.4 pthread_detach F
> GLIBC_2.4 pthread_getconcurrency F
> GLIBC_2.4 pthread_getcpuclockid F
> GLIBC_2.4 pthread_join F
> -GLIBC_2.4 pthread_rwlock_init F
> GLIBC_2.4 pthread_rwlock_timedrdlock F
> GLIBC_2.4 pthread_rwlock_timedwrlock F
> GLIBC_2.4 pthread_rwlock_tryrdlock F
> diff --git a/sysdeps/unix/sysv/linux/csky/libc.abilist b/sysdeps/unix/sysv/linux/csky/libc.abilist
> index a99d18b478..c0a28cd1d4 100644
> --- a/sysdeps/unix/sysv/linux/csky/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/csky/libc.abilist
> @@ -344,6 +344,7 @@ GLIBC_2.29 __pthread_mutexattr_init F
> GLIBC_2.29 __pthread_mutexattr_settype F
> GLIBC_2.29 __pthread_once 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_unlock F
> GLIBC_2.29 __pthread_rwlock_wrlock F
> @@ -1489,6 +1490,7 @@ GLIBC_2.29 pthread_mutexattr_setrobust_np F
> GLIBC_2.29 pthread_mutexattr_settype F
> GLIBC_2.29 pthread_once 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_unlock F
> GLIBC_2.29 pthread_rwlock_wrlock F
> @@ -2228,6 +2230,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/csky/libpthread.abilist b/sysdeps/unix/sysv/linux/csky/libpthread.abilist
> index 21d9318f9a..8c2eacba71 100644
> --- a/sysdeps/unix/sysv/linux/csky/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/csky/libpthread.abilist
> @@ -4,7 +4,6 @@ GLIBC_2.29 _IO_funlockfile F
> GLIBC_2.29 __errno_location F
> GLIBC_2.29 __pthread_register_cancel F
> GLIBC_2.29 __pthread_register_cancel_defer F
> -GLIBC_2.29 __pthread_rwlock_init F
> GLIBC_2.29 __pthread_rwlock_tryrdlock F
> GLIBC_2.29 __pthread_rwlock_trywrlock F
> GLIBC_2.29 __pthread_unregister_cancel F
> @@ -49,7 +48,6 @@ GLIBC_2.29 pthread_getconcurrency F
> GLIBC_2.29 pthread_getcpuclockid F
> GLIBC_2.29 pthread_getname_np F
> GLIBC_2.29 pthread_join F
> -GLIBC_2.29 pthread_rwlock_init F
> GLIBC_2.29 pthread_rwlock_timedrdlock F
> GLIBC_2.29 pthread_rwlock_timedwrlock F
> GLIBC_2.29 pthread_rwlock_tryrdlock F
> diff --git a/sysdeps/unix/sysv/linux/hppa/libc.abilist b/sysdeps/unix/sysv/linux/hppa/libc.abilist
> index 7d0c716a6d..50253bac3f 100644
> --- a/sysdeps/unix/sysv/linux/hppa/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/hppa/libc.abilist
> @@ -370,6 +370,7 @@ GLIBC_2.2 __pthread_mutexattr_init F
> GLIBC_2.2 __pthread_mutexattr_settype F
> GLIBC_2.2 __pthread_once 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_unlock F
> GLIBC_2.2 __pthread_rwlock_wrlock F
> @@ -1313,6 +1314,7 @@ GLIBC_2.2 pthread_mutexattr_setpshared F
> GLIBC_2.2 pthread_mutexattr_settype F
> GLIBC_2.2 pthread_once 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_unlock F
> GLIBC_2.2 pthread_rwlock_wrlock F
> @@ -2179,6 +2181,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist
> index 82bc0321f5..52da9c0a32 100644
> --- a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist
> @@ -7,7 +7,6 @@ GLIBC_2.2 _IO_flockfile F
> GLIBC_2.2 _IO_ftrylockfile F
> GLIBC_2.2 _IO_funlockfile F
> GLIBC_2.2 __errno_location F
> -GLIBC_2.2 __pthread_rwlock_init F
> GLIBC_2.2 __pthread_rwlock_tryrdlock F
> GLIBC_2.2 __pthread_rwlock_trywrlock F
> GLIBC_2.2 flockfile F
> @@ -33,7 +32,6 @@ GLIBC_2.2 pthread_detach F
> GLIBC_2.2 pthread_getconcurrency F
> GLIBC_2.2 pthread_getcpuclockid F
> GLIBC_2.2 pthread_join F
> -GLIBC_2.2 pthread_rwlock_init F
> GLIBC_2.2 pthread_rwlock_timedrdlock F
> GLIBC_2.2 pthread_rwlock_timedwrlock F
> GLIBC_2.2 pthread_rwlock_tryrdlock F
> diff --git a/sysdeps/unix/sysv/linux/i386/libc.abilist b/sysdeps/unix/sysv/linux/i386/libc.abilist
> index 906baf44bf..4a6e8cf210 100644
> --- a/sysdeps/unix/sysv/linux/i386/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/i386/libc.abilist
> @@ -1575,6 +1575,7 @@ GLIBC_2.1 pthread_attr_init F
> 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_unlock F
> GLIBC_2.1 pthread_rwlock_wrlock F
> @@ -1891,6 +1892,7 @@ GLIBC_2.2 __nl_langinfo_l F
> GLIBC_2.2 __open64 F
> GLIBC_2.2 __pread64 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_unlock F
> GLIBC_2.2 __pthread_rwlock_wrlock F
> @@ -2356,6 +2358,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/i386/libpthread.abilist b/sysdeps/unix/sysv/linux/i386/libpthread.abilist
> index ad2e81096d..a0daef9d41 100644
> --- a/sysdeps/unix/sysv/linux/i386/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/i386/libpthread.abilist
> @@ -24,7 +24,6 @@ GLIBC_2.1 pthread_attr_setstackaddr F
> GLIBC_2.1 pthread_attr_setstacksize F
> GLIBC_2.1 pthread_create F
> GLIBC_2.1 pthread_getconcurrency F
> -GLIBC_2.1 pthread_rwlock_init F
> GLIBC_2.1 pthread_rwlock_tryrdlock F
> GLIBC_2.1 pthread_rwlock_trywrlock F
> GLIBC_2.1 pthread_rwlockattr_destroy F
> @@ -49,7 +48,6 @@ GLIBC_2.12 pthread_getname_np F
> GLIBC_2.12 pthread_setname_np F
> GLIBC_2.18 pthread_getattr_default_np F
> GLIBC_2.18 pthread_setattr_default_np F
> -GLIBC_2.2 __pthread_rwlock_init F
> GLIBC_2.2 __pthread_rwlock_tryrdlock F
> GLIBC_2.2 __pthread_rwlock_trywrlock F
> GLIBC_2.2 pthread_attr_getstack F
> diff --git a/sysdeps/unix/sysv/linux/ia64/libc.abilist b/sysdeps/unix/sysv/linux/ia64/libc.abilist
> index f92ae402f9..ba34d9e68f 100644
> --- a/sysdeps/unix/sysv/linux/ia64/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/ia64/libc.abilist
> @@ -374,6 +374,7 @@ GLIBC_2.2 __pthread_mutexattr_init F
> GLIBC_2.2 __pthread_mutexattr_settype F
> GLIBC_2.2 __pthread_once 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_unlock F
> GLIBC_2.2 __pthread_rwlock_wrlock F
> @@ -1334,6 +1335,7 @@ GLIBC_2.2 pthread_mutexattr_setpshared F
> GLIBC_2.2 pthread_mutexattr_settype F
> GLIBC_2.2 pthread_once 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_unlock F
> GLIBC_2.2 pthread_rwlock_wrlock F
> @@ -2213,6 +2215,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist
> index 6d11adb7da..5d186fc586 100644
> --- a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist
> @@ -7,7 +7,6 @@ GLIBC_2.2 _IO_flockfile F
> GLIBC_2.2 _IO_ftrylockfile F
> GLIBC_2.2 _IO_funlockfile F
> GLIBC_2.2 __errno_location F
> -GLIBC_2.2 __pthread_rwlock_init F
> GLIBC_2.2 __pthread_rwlock_tryrdlock F
> GLIBC_2.2 __pthread_rwlock_trywrlock F
> GLIBC_2.2 flockfile F
> @@ -33,7 +32,6 @@ GLIBC_2.2 pthread_detach F
> GLIBC_2.2 pthread_getconcurrency F
> GLIBC_2.2 pthread_getcpuclockid F
> GLIBC_2.2 pthread_join F
> -GLIBC_2.2 pthread_rwlock_init F
> GLIBC_2.2 pthread_rwlock_timedrdlock F
> GLIBC_2.2 pthread_rwlock_timedwrlock F
> GLIBC_2.2 pthread_rwlock_tryrdlock F
> diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
> index cb6bd2ec33..2a31f0acd5 100644
> --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
> @@ -208,6 +208,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> @@ -542,6 +543,7 @@ GLIBC_2.4 __pthread_mutexattr_init F
> GLIBC_2.4 __pthread_mutexattr_settype F
> GLIBC_2.4 __pthread_once 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_unlock F
> GLIBC_2.4 __pthread_rwlock_wrlock F
> @@ -1631,6 +1633,7 @@ GLIBC_2.4 pthread_mutexattr_setrobust_np F
> GLIBC_2.4 pthread_mutexattr_settype F
> GLIBC_2.4 pthread_once 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_unlock F
> GLIBC_2.4 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
> index 85d9816c4e..1340d32c7f 100644
> --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
> @@ -33,7 +33,6 @@ GLIBC_2.4 __errno_location F
> GLIBC_2.4 __libpthread_version_placeholder F
> GLIBC_2.4 __pthread_register_cancel F
> GLIBC_2.4 __pthread_register_cancel_defer F
> -GLIBC_2.4 __pthread_rwlock_init F
> GLIBC_2.4 __pthread_rwlock_tryrdlock F
> GLIBC_2.4 __pthread_rwlock_trywrlock F
> GLIBC_2.4 __pthread_unregister_cancel F
> @@ -63,7 +62,6 @@ GLIBC_2.4 pthread_detach F
> GLIBC_2.4 pthread_getconcurrency F
> GLIBC_2.4 pthread_getcpuclockid F
> GLIBC_2.4 pthread_join F
> -GLIBC_2.4 pthread_rwlock_init F
> GLIBC_2.4 pthread_rwlock_timedrdlock F
> GLIBC_2.4 pthread_rwlock_timedwrlock F
> GLIBC_2.4 pthread_rwlock_tryrdlock F
> diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
> index 5e1c0c5f92..4528a06d6f 100644
> --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
> @@ -1571,6 +1571,7 @@ GLIBC_2.1 pthread_attr_init F
> 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_unlock F
> GLIBC_2.1 pthread_rwlock_wrlock F
> @@ -1847,6 +1848,7 @@ GLIBC_2.2 __nl_langinfo_l F
> GLIBC_2.2 __open64 F
> GLIBC_2.2 __pread64 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_unlock F
> GLIBC_2.2 __pthread_rwlock_wrlock F
> @@ -2299,6 +2301,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
> index ad2e81096d..a0daef9d41 100644
> --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
> @@ -24,7 +24,6 @@ GLIBC_2.1 pthread_attr_setstackaddr F
> GLIBC_2.1 pthread_attr_setstacksize F
> GLIBC_2.1 pthread_create F
> GLIBC_2.1 pthread_getconcurrency F
> -GLIBC_2.1 pthread_rwlock_init F
> GLIBC_2.1 pthread_rwlock_tryrdlock F
> GLIBC_2.1 pthread_rwlock_trywrlock F
> GLIBC_2.1 pthread_rwlockattr_destroy F
> @@ -49,7 +48,6 @@ GLIBC_2.12 pthread_getname_np F
> GLIBC_2.12 pthread_setname_np F
> GLIBC_2.18 pthread_getattr_default_np F
> GLIBC_2.18 pthread_setattr_default_np F
> -GLIBC_2.2 __pthread_rwlock_init F
> GLIBC_2.2 __pthread_rwlock_tryrdlock F
> GLIBC_2.2 __pthread_rwlock_trywrlock F
> GLIBC_2.2 pthread_attr_getstack F
> diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
> index 824dea1e05..0f6be8c0f2 100644
> --- a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
> @@ -352,6 +352,7 @@ GLIBC_2.18 __pthread_mutexattr_init F
> GLIBC_2.18 __pthread_mutexattr_settype F
> GLIBC_2.18 __pthread_once 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_unlock F
> GLIBC_2.18 __pthread_rwlock_wrlock F
> @@ -1504,6 +1505,7 @@ GLIBC_2.18 pthread_mutexattr_setrobust_np F
> GLIBC_2.18 pthread_mutexattr_settype F
> GLIBC_2.18 pthread_once 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_unlock F
> GLIBC_2.18 pthread_rwlock_wrlock F
> @@ -2279,6 +2281,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist
> index 7d0c9cf145..968fcfd1df 100644
> --- a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist
> @@ -4,7 +4,6 @@ GLIBC_2.18 _IO_funlockfile F
> GLIBC_2.18 __errno_location F
> GLIBC_2.18 __pthread_register_cancel F
> GLIBC_2.18 __pthread_register_cancel_defer F
> -GLIBC_2.18 __pthread_rwlock_init F
> GLIBC_2.18 __pthread_rwlock_tryrdlock F
> GLIBC_2.18 __pthread_rwlock_trywrlock F
> GLIBC_2.18 __pthread_unregister_cancel F
> @@ -36,7 +35,6 @@ GLIBC_2.18 pthread_getconcurrency F
> GLIBC_2.18 pthread_getcpuclockid F
> GLIBC_2.18 pthread_getname_np F
> GLIBC_2.18 pthread_join F
> -GLIBC_2.18 pthread_rwlock_init F
> GLIBC_2.18 pthread_rwlock_timedrdlock F
> GLIBC_2.18 pthread_rwlock_timedwrlock F
> GLIBC_2.18 pthread_rwlock_tryrdlock F
> diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
> index 177bd7f5e4..a024c588b1 100644
> --- a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
> @@ -352,6 +352,7 @@ GLIBC_2.18 __pthread_mutexattr_init F
> GLIBC_2.18 __pthread_mutexattr_settype F
> GLIBC_2.18 __pthread_once 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_unlock F
> GLIBC_2.18 __pthread_rwlock_wrlock F
> @@ -1504,6 +1505,7 @@ GLIBC_2.18 pthread_mutexattr_setrobust_np F
> GLIBC_2.18 pthread_mutexattr_settype F
> GLIBC_2.18 pthread_once 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_unlock F
> GLIBC_2.18 pthread_rwlock_wrlock F
> @@ -2276,6 +2278,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist
> index 7d0c9cf145..968fcfd1df 100644
> --- a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist
> @@ -4,7 +4,6 @@ GLIBC_2.18 _IO_funlockfile F
> GLIBC_2.18 __errno_location F
> GLIBC_2.18 __pthread_register_cancel F
> GLIBC_2.18 __pthread_register_cancel_defer F
> -GLIBC_2.18 __pthread_rwlock_init F
> GLIBC_2.18 __pthread_rwlock_tryrdlock F
> GLIBC_2.18 __pthread_rwlock_trywrlock F
> GLIBC_2.18 __pthread_unregister_cancel F
> @@ -36,7 +35,6 @@ GLIBC_2.18 pthread_getconcurrency F
> GLIBC_2.18 pthread_getcpuclockid F
> GLIBC_2.18 pthread_getname_np F
> GLIBC_2.18 pthread_join F
> -GLIBC_2.18 pthread_rwlock_init F
> GLIBC_2.18 pthread_rwlock_timedrdlock F
> GLIBC_2.18 pthread_rwlock_timedwrlock F
> GLIBC_2.18 pthread_rwlock_tryrdlock F
> diff --git a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
> index db80dbe227..f70ab56969 100644
> --- a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
> @@ -1545,6 +1545,7 @@ GLIBC_2.2 __open64 F
> GLIBC_2.2 __poll F
> GLIBC_2.2 __pread64 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_unlock F
> GLIBC_2.2 __pthread_rwlock_wrlock F
> @@ -1843,6 +1844,7 @@ GLIBC_2.2 pthread_mutexattr_gettype F
> 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_unlock F
> GLIBC_2.2 pthread_rwlock_wrlock F
> @@ -2262,6 +2264,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
> index 14e375c8da..a09a4dc5e3 100644
> --- a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
> @@ -21,7 +21,6 @@ GLIBC_2.12 pthread_getname_np F
> GLIBC_2.12 pthread_setname_np F
> GLIBC_2.18 pthread_getattr_default_np F
> GLIBC_2.18 pthread_setattr_default_np F
> -GLIBC_2.2 __pthread_rwlock_init F
> GLIBC_2.2 __pthread_rwlock_tryrdlock F
> GLIBC_2.2 __pthread_rwlock_trywrlock F
> GLIBC_2.2 pthread_attr_getguardsize F
> @@ -41,7 +40,6 @@ GLIBC_2.2 pthread_barrierattr_setpshared F
> GLIBC_2.2 pthread_create F
> GLIBC_2.2 pthread_getconcurrency F
> GLIBC_2.2 pthread_getcpuclockid F
> -GLIBC_2.2 pthread_rwlock_init F
> GLIBC_2.2 pthread_rwlock_timedrdlock F
> GLIBC_2.2 pthread_rwlock_timedwrlock F
> GLIBC_2.2 pthread_rwlock_tryrdlock F
> diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
> index 46fbef56f2..996626fc69 100644
> --- a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
> @@ -1543,6 +1543,7 @@ GLIBC_2.2 __open64 F
> GLIBC_2.2 __poll F
> GLIBC_2.2 __pread64 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_unlock F
> GLIBC_2.2 __pthread_rwlock_wrlock F
> @@ -1841,6 +1842,7 @@ GLIBC_2.2 pthread_mutexattr_gettype F
> 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_unlock F
> GLIBC_2.2 pthread_rwlock_wrlock F
> @@ -2260,6 +2262,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
> index 14e375c8da..a09a4dc5e3 100644
> --- a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
> @@ -21,7 +21,6 @@ GLIBC_2.12 pthread_getname_np F
> GLIBC_2.12 pthread_setname_np F
> GLIBC_2.18 pthread_getattr_default_np F
> GLIBC_2.18 pthread_setattr_default_np F
> -GLIBC_2.2 __pthread_rwlock_init F
> GLIBC_2.2 __pthread_rwlock_tryrdlock F
> GLIBC_2.2 __pthread_rwlock_trywrlock F
> GLIBC_2.2 pthread_attr_getguardsize F
> @@ -41,7 +40,6 @@ GLIBC_2.2 pthread_barrierattr_setpshared F
> GLIBC_2.2 pthread_create F
> GLIBC_2.2 pthread_getconcurrency F
> GLIBC_2.2 pthread_getcpuclockid F
> -GLIBC_2.2 pthread_rwlock_init F
> GLIBC_2.2 pthread_rwlock_timedrdlock F
> GLIBC_2.2 pthread_rwlock_timedwrlock F
> GLIBC_2.2 pthread_rwlock_tryrdlock F
> diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
> index 02b3a04e1d..fcef7cf463 100644
> --- a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
> @@ -1543,6 +1543,7 @@ GLIBC_2.2 __open64 F
> GLIBC_2.2 __poll F
> GLIBC_2.2 __pread64 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_unlock F
> GLIBC_2.2 __pthread_rwlock_wrlock F
> @@ -1841,6 +1842,7 @@ GLIBC_2.2 pthread_mutexattr_gettype F
> 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_unlock F
> GLIBC_2.2 pthread_rwlock_wrlock F
> @@ -2268,6 +2270,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
> index ffbd2d7e1a..e6425649d7 100644
> --- a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
> @@ -1539,6 +1539,7 @@ GLIBC_2.2 __open64 F
> GLIBC_2.2 __poll F
> GLIBC_2.2 __pread64 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_unlock F
> GLIBC_2.2 __pthread_rwlock_wrlock F
> @@ -1837,6 +1838,7 @@ GLIBC_2.2 pthread_mutexattr_gettype F
> 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_unlock F
> GLIBC_2.2 pthread_rwlock_wrlock F
> @@ -2262,6 +2264,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/nios2/libc.abilist b/sysdeps/unix/sysv/linux/nios2/libc.abilist
> index 5a5b32e243..28b29918a8 100644
> --- a/sysdeps/unix/sysv/linux/nios2/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/nios2/libc.abilist
> @@ -389,6 +389,7 @@ GLIBC_2.21 __pthread_mutexattr_init F
> GLIBC_2.21 __pthread_mutexattr_settype F
> GLIBC_2.21 __pthread_once 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_unlock F
> GLIBC_2.21 __pthread_rwlock_wrlock F
> @@ -1547,6 +1548,7 @@ GLIBC_2.21 pthread_mutexattr_setrobust_np F
> GLIBC_2.21 pthread_mutexattr_settype F
> GLIBC_2.21 pthread_once 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_unlock F
> GLIBC_2.21 pthread_rwlock_wrlock F
> @@ -2318,6 +2320,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist
> index 547413fcf0..a13844bb1d 100644
> --- a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist
> @@ -4,7 +4,6 @@ GLIBC_2.21 _IO_funlockfile F
> GLIBC_2.21 __errno_location F
> GLIBC_2.21 __pthread_register_cancel F
> GLIBC_2.21 __pthread_register_cancel_defer F
> -GLIBC_2.21 __pthread_rwlock_init F
> GLIBC_2.21 __pthread_rwlock_tryrdlock F
> GLIBC_2.21 __pthread_rwlock_trywrlock F
> GLIBC_2.21 __pthread_unregister_cancel F
> @@ -36,7 +35,6 @@ GLIBC_2.21 pthread_getconcurrency F
> GLIBC_2.21 pthread_getcpuclockid F
> GLIBC_2.21 pthread_getname_np F
> GLIBC_2.21 pthread_join F
> -GLIBC_2.21 pthread_rwlock_init F
> GLIBC_2.21 pthread_rwlock_timedrdlock F
> GLIBC_2.21 pthread_rwlock_timedwrlock F
> GLIBC_2.21 pthread_rwlock_tryrdlock F
> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
> index 80fed3fb6c..7ef1e07d22 100644
> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
> @@ -1579,6 +1579,7 @@ GLIBC_2.1 pthread_attr_init F
> 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_unlock F
> GLIBC_2.1 pthread_rwlock_wrlock F
> @@ -1853,6 +1854,7 @@ GLIBC_2.2 __nl_langinfo_l F
> GLIBC_2.2 __open64 F
> GLIBC_2.2 __pread64 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_unlock F
> GLIBC_2.2 __pthread_rwlock_wrlock F
> @@ -2326,6 +2328,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
> index aff96f37d4..8c16c499ad 100644
> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
> @@ -24,7 +24,6 @@ GLIBC_2.1 pthread_attr_setstackaddr F
> GLIBC_2.1 pthread_attr_setstacksize F
> GLIBC_2.1 pthread_create F
> GLIBC_2.1 pthread_getconcurrency F
> -GLIBC_2.1 pthread_rwlock_init F
> GLIBC_2.1 pthread_rwlock_tryrdlock F
> GLIBC_2.1 pthread_rwlock_trywrlock F
> GLIBC_2.1 pthread_rwlockattr_destroy F
> @@ -49,7 +48,6 @@ GLIBC_2.12 pthread_getname_np F
> GLIBC_2.12 pthread_setname_np F
> GLIBC_2.18 pthread_getattr_default_np F
> GLIBC_2.18 pthread_setattr_default_np F
> -GLIBC_2.2 __pthread_rwlock_init F
> GLIBC_2.2 __pthread_rwlock_tryrdlock F
> GLIBC_2.2 __pthread_rwlock_trywrlock F
> GLIBC_2.2 pthread_attr_getstack F
> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
> index 1673ad274d..a125dae857 100644
> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
> @@ -1579,6 +1579,7 @@ GLIBC_2.1 pthread_attr_init F
> 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_unlock F
> GLIBC_2.1 pthread_rwlock_wrlock F
> @@ -1857,6 +1858,7 @@ GLIBC_2.2 __nl_langinfo_l F
> GLIBC_2.2 __open64 F
> GLIBC_2.2 __pread64 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_unlock F
> GLIBC_2.2 __pthread_rwlock_wrlock F
> @@ -2359,6 +2361,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
> index dd4d6d1fcc..90f7f52f9b 100644
> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
> @@ -423,6 +423,7 @@ GLIBC_2.3 __pthread_mutexattr_init F
> GLIBC_2.3 __pthread_mutexattr_settype F
> GLIBC_2.3 __pthread_once 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_unlock F
> GLIBC_2.3 __pthread_rwlock_wrlock F
> @@ -1419,6 +1420,7 @@ GLIBC_2.3 pthread_mutexattr_setpshared F
> GLIBC_2.3 pthread_mutexattr_settype F
> GLIBC_2.3 pthread_once 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_unlock F
> GLIBC_2.3 pthread_rwlock_wrlock F
> @@ -2180,6 +2182,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
> index 558fb1b7db..099a75abb3 100644
> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
> @@ -28,7 +28,6 @@ GLIBC_2.3 _IO_flockfile F
> GLIBC_2.3 _IO_ftrylockfile F
> GLIBC_2.3 _IO_funlockfile F
> GLIBC_2.3 __errno_location F
> -GLIBC_2.3 __pthread_rwlock_init F
> GLIBC_2.3 __pthread_rwlock_tryrdlock F
> GLIBC_2.3 __pthread_rwlock_trywrlock F
> GLIBC_2.3 flockfile F
> @@ -54,7 +53,6 @@ GLIBC_2.3 pthread_detach F
> GLIBC_2.3 pthread_getconcurrency F
> GLIBC_2.3 pthread_getcpuclockid F
> GLIBC_2.3 pthread_join F
> -GLIBC_2.3 pthread_rwlock_init F
> GLIBC_2.3 pthread_rwlock_timedrdlock F
> GLIBC_2.3 pthread_rwlock_timedwrlock F
> GLIBC_2.3 pthread_rwlock_tryrdlock F
> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
> index 9c3dba4573..203e333287 100644
> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
> @@ -437,6 +437,7 @@ GLIBC_2.17 __pthread_mutexattr_init F
> GLIBC_2.17 __pthread_mutexattr_settype F
> GLIBC_2.17 __pthread_once 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_unlock F
> GLIBC_2.17 __pthread_rwlock_wrlock F
> @@ -1590,6 +1591,7 @@ GLIBC_2.17 pthread_mutexattr_setrobust_np F
> GLIBC_2.17 pthread_mutexattr_settype F
> GLIBC_2.17 pthread_once 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_unlock F
> GLIBC_2.17 pthread_rwlock_wrlock F
> @@ -2481,6 +2483,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
> index ebdbdfa867..c6dee0cc25 100644
> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
> @@ -4,7 +4,6 @@ GLIBC_2.17 _IO_funlockfile F
> GLIBC_2.17 __errno_location F
> GLIBC_2.17 __pthread_register_cancel F
> GLIBC_2.17 __pthread_register_cancel_defer F
> -GLIBC_2.17 __pthread_rwlock_init F
> GLIBC_2.17 __pthread_rwlock_tryrdlock F
> GLIBC_2.17 __pthread_rwlock_trywrlock F
> GLIBC_2.17 __pthread_unregister_cancel F
> @@ -35,7 +34,6 @@ GLIBC_2.17 pthread_getconcurrency F
> GLIBC_2.17 pthread_getcpuclockid F
> GLIBC_2.17 pthread_getname_np F
> GLIBC_2.17 pthread_join F
> -GLIBC_2.17 pthread_rwlock_init F
> GLIBC_2.17 pthread_rwlock_timedrdlock F
> GLIBC_2.17 pthread_rwlock_timedwrlock F
> GLIBC_2.17 pthread_rwlock_tryrdlock F
> diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
> index 44ab3eacef..5754bd09b5 100644
> --- a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
> @@ -337,6 +337,7 @@ GLIBC_2.33 __pthread_mutexattr_init F
> GLIBC_2.33 __pthread_mutexattr_settype F
> GLIBC_2.33 __pthread_once 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_unlock F
> GLIBC_2.33 __pthread_rwlock_wrlock F
> @@ -1434,6 +1435,7 @@ GLIBC_2.33 pthread_once F
> 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_unlock F
> GLIBC_2.33 pthread_rwlock_wrlock F
> @@ -2046,6 +2048,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist
> index d2c8879f18..5774e8e989 100644
> --- a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist
> @@ -4,7 +4,6 @@ GLIBC_2.33 _IO_funlockfile F
> GLIBC_2.33 __errno_location F
> GLIBC_2.33 __pthread_register_cancel F
> GLIBC_2.33 __pthread_register_cancel_defer F
> -GLIBC_2.33 __pthread_rwlock_init F
> GLIBC_2.33 __pthread_rwlock_tryrdlock F
> GLIBC_2.33 __pthread_rwlock_trywrlock F
> GLIBC_2.33 __pthread_unregister_cancel F
> @@ -50,7 +49,6 @@ GLIBC_2.33 pthread_getconcurrency F
> GLIBC_2.33 pthread_getcpuclockid F
> GLIBC_2.33 pthread_getname_np F
> GLIBC_2.33 pthread_join F
> -GLIBC_2.33 pthread_rwlock_init F
> GLIBC_2.33 pthread_rwlock_timedrdlock F
> GLIBC_2.33 pthread_rwlock_timedwrlock F
> GLIBC_2.33 pthread_rwlock_tryrdlock F
> diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
> index b79b1f6726..a63dc8cf06 100644
> --- a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
> @@ -348,6 +348,7 @@ GLIBC_2.27 __pthread_mutexattr_init F
> GLIBC_2.27 __pthread_mutexattr_settype F
> GLIBC_2.27 __pthread_once 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_unlock F
> GLIBC_2.27 __pthread_rwlock_wrlock F
> @@ -1492,6 +1493,7 @@ GLIBC_2.27 pthread_mutexattr_setrobust_np F
> GLIBC_2.27 pthread_mutexattr_settype F
> GLIBC_2.27 pthread_once 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_unlock F
> GLIBC_2.27 pthread_rwlock_wrlock F
> @@ -2246,6 +2248,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
> index 48a5bd78f0..aafc83b0c1 100644
> --- a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
> @@ -4,7 +4,6 @@ GLIBC_2.27 _IO_funlockfile F
> GLIBC_2.27 __errno_location F
> GLIBC_2.27 __pthread_register_cancel F
> GLIBC_2.27 __pthread_register_cancel_defer F
> -GLIBC_2.27 __pthread_rwlock_init F
> GLIBC_2.27 __pthread_rwlock_tryrdlock F
> GLIBC_2.27 __pthread_rwlock_trywrlock F
> GLIBC_2.27 __pthread_unregister_cancel F
> @@ -36,7 +35,6 @@ GLIBC_2.27 pthread_getconcurrency F
> GLIBC_2.27 pthread_getcpuclockid F
> GLIBC_2.27 pthread_getname_np F
> GLIBC_2.27 pthread_join F
> -GLIBC_2.27 pthread_rwlock_init F
> GLIBC_2.27 pthread_rwlock_timedrdlock F
> GLIBC_2.27 pthread_rwlock_timedwrlock F
> GLIBC_2.27 pthread_rwlock_tryrdlock F
> diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
> index 4c88f1489d..d77f798688 100644
> --- a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
> @@ -1571,6 +1571,7 @@ GLIBC_2.1 pthread_attr_init F
> 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_unlock F
> GLIBC_2.1 pthread_rwlock_wrlock F
> @@ -1851,6 +1852,7 @@ GLIBC_2.2 __nl_langinfo_l F
> GLIBC_2.2 __open64 F
> GLIBC_2.2 __pread64 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_unlock F
> GLIBC_2.2 __pthread_rwlock_wrlock F
> @@ -2324,6 +2326,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
> index 2cac9acdc5..67f28adcac 100644
> --- a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
> @@ -24,7 +24,6 @@ GLIBC_2.1 pthread_attr_setstackaddr F
> GLIBC_2.1 pthread_attr_setstacksize F
> GLIBC_2.1 pthread_create F
> GLIBC_2.1 pthread_getconcurrency F
> -GLIBC_2.1 pthread_rwlock_init F
> GLIBC_2.1 pthread_rwlock_tryrdlock F
> GLIBC_2.1 pthread_rwlock_trywrlock F
> GLIBC_2.1 pthread_rwlockattr_destroy F
> @@ -50,7 +49,6 @@ GLIBC_2.12 pthread_setname_np F
> GLIBC_2.18 pthread_getattr_default_np F
> GLIBC_2.18 pthread_setattr_default_np F
> GLIBC_2.19 __libpthread_version_placeholder F
> -GLIBC_2.2 __pthread_rwlock_init F
> GLIBC_2.2 __pthread_rwlock_tryrdlock F
> GLIBC_2.2 __pthread_rwlock_trywrlock F
> GLIBC_2.2 pthread_attr_getstack F
> diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
> index 7b3f066d8c..0c2b2b80c9 100644
> --- a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
> @@ -384,6 +384,7 @@ GLIBC_2.2 __pthread_mutexattr_init F
> GLIBC_2.2 __pthread_mutexattr_settype F
> GLIBC_2.2 __pthread_once 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_unlock F
> GLIBC_2.2 __pthread_rwlock_wrlock F
> @@ -1331,6 +1332,7 @@ GLIBC_2.2 pthread_mutexattr_setpshared F
> GLIBC_2.2 pthread_mutexattr_settype F
> GLIBC_2.2 pthread_once 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_unlock F
> GLIBC_2.2 pthread_rwlock_wrlock F
> @@ -2217,6 +2219,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
> index 19792333fe..e8c053292d 100644
> --- a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
> @@ -8,7 +8,6 @@ GLIBC_2.2 _IO_flockfile F
> GLIBC_2.2 _IO_ftrylockfile F
> GLIBC_2.2 _IO_funlockfile F
> GLIBC_2.2 __errno_location F
> -GLIBC_2.2 __pthread_rwlock_init F
> GLIBC_2.2 __pthread_rwlock_tryrdlock F
> GLIBC_2.2 __pthread_rwlock_trywrlock F
> GLIBC_2.2 flockfile F
> @@ -34,7 +33,6 @@ GLIBC_2.2 pthread_detach F
> GLIBC_2.2 pthread_getconcurrency F
> GLIBC_2.2 pthread_getcpuclockid F
> GLIBC_2.2 pthread_join F
> -GLIBC_2.2 pthread_rwlock_init F
> GLIBC_2.2 pthread_rwlock_timedrdlock F
> GLIBC_2.2 pthread_rwlock_timedwrlock F
> GLIBC_2.2 pthread_rwlock_tryrdlock F
> diff --git a/sysdeps/unix/sysv/linux/sh/be/libc.abilist b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
> index bda61af088..2383629b95 100644
> --- a/sysdeps/unix/sysv/linux/sh/be/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
> @@ -373,6 +373,7 @@ GLIBC_2.2 __pthread_mutexattr_init F
> GLIBC_2.2 __pthread_mutexattr_settype F
> GLIBC_2.2 __pthread_once 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_unlock F
> GLIBC_2.2 __pthread_rwlock_wrlock F
> @@ -1317,6 +1318,7 @@ GLIBC_2.2 pthread_mutexattr_setpshared F
> GLIBC_2.2 pthread_mutexattr_settype F
> GLIBC_2.2 pthread_once 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_unlock F
> GLIBC_2.2 pthread_rwlock_wrlock F
> @@ -2186,6 +2188,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist
> index 82bc0321f5..52da9c0a32 100644
> --- a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist
> @@ -7,7 +7,6 @@ GLIBC_2.2 _IO_flockfile F
> GLIBC_2.2 _IO_ftrylockfile F
> GLIBC_2.2 _IO_funlockfile F
> GLIBC_2.2 __errno_location F
> -GLIBC_2.2 __pthread_rwlock_init F
> GLIBC_2.2 __pthread_rwlock_tryrdlock F
> GLIBC_2.2 __pthread_rwlock_trywrlock F
> GLIBC_2.2 flockfile F
> @@ -33,7 +32,6 @@ GLIBC_2.2 pthread_detach F
> GLIBC_2.2 pthread_getconcurrency F
> GLIBC_2.2 pthread_getcpuclockid F
> GLIBC_2.2 pthread_join F
> -GLIBC_2.2 pthread_rwlock_init F
> GLIBC_2.2 pthread_rwlock_timedrdlock F
> GLIBC_2.2 pthread_rwlock_timedwrlock F
> GLIBC_2.2 pthread_rwlock_tryrdlock F
> diff --git a/sysdeps/unix/sysv/linux/sh/le/libc.abilist b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
> index 7227ced168..66b504e002 100644
> --- a/sysdeps/unix/sysv/linux/sh/le/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
> @@ -373,6 +373,7 @@ GLIBC_2.2 __pthread_mutexattr_init F
> GLIBC_2.2 __pthread_mutexattr_settype F
> GLIBC_2.2 __pthread_once 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_unlock F
> GLIBC_2.2 __pthread_rwlock_wrlock F
> @@ -1317,6 +1318,7 @@ GLIBC_2.2 pthread_mutexattr_setpshared F
> GLIBC_2.2 pthread_mutexattr_settype F
> GLIBC_2.2 pthread_once 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_unlock F
> GLIBC_2.2 pthread_rwlock_wrlock F
> @@ -2183,6 +2185,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist
> index 82bc0321f5..52da9c0a32 100644
> --- a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist
> @@ -7,7 +7,6 @@ GLIBC_2.2 _IO_flockfile F
> GLIBC_2.2 _IO_ftrylockfile F
> GLIBC_2.2 _IO_funlockfile F
> GLIBC_2.2 __errno_location F
> -GLIBC_2.2 __pthread_rwlock_init F
> GLIBC_2.2 __pthread_rwlock_tryrdlock F
> GLIBC_2.2 __pthread_rwlock_trywrlock F
> GLIBC_2.2 flockfile F
> @@ -33,7 +32,6 @@ GLIBC_2.2 pthread_detach F
> GLIBC_2.2 pthread_getconcurrency F
> GLIBC_2.2 pthread_getcpuclockid F
> GLIBC_2.2 pthread_join F
> -GLIBC_2.2 pthread_rwlock_init F
> GLIBC_2.2 pthread_rwlock_timedrdlock F
> GLIBC_2.2 pthread_rwlock_timedwrlock F
> GLIBC_2.2 pthread_rwlock_tryrdlock F
> diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
> index 330715ff71..4638a6dc22 100644
> --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
> @@ -1572,6 +1572,7 @@ GLIBC_2.1 pthread_attr_init F
> 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_unlock F
> GLIBC_2.1 pthread_rwlock_wrlock F
> @@ -1849,6 +1850,7 @@ GLIBC_2.2 __nl_langinfo_l F
> GLIBC_2.2 __open64 F
> GLIBC_2.2 __pread64 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_unlock F
> GLIBC_2.2 __pthread_rwlock_wrlock F
> @@ -2315,6 +2317,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
> index b80868c5da..0189fc6a88 100644
> --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
> @@ -24,7 +24,6 @@ GLIBC_2.1 pthread_attr_setstackaddr F
> GLIBC_2.1 pthread_attr_setstacksize F
> GLIBC_2.1 pthread_create F
> GLIBC_2.1 pthread_getconcurrency F
> -GLIBC_2.1 pthread_rwlock_init F
> GLIBC_2.1 pthread_rwlock_tryrdlock F
> GLIBC_2.1 pthread_rwlock_trywrlock F
> GLIBC_2.1 pthread_rwlockattr_destroy F
> @@ -49,7 +48,6 @@ GLIBC_2.12 pthread_getname_np F
> GLIBC_2.12 pthread_setname_np F
> GLIBC_2.18 pthread_getattr_default_np F
> GLIBC_2.18 pthread_setattr_default_np F
> -GLIBC_2.2 __pthread_rwlock_init F
> GLIBC_2.2 __pthread_rwlock_tryrdlock F
> GLIBC_2.2 __pthread_rwlock_trywrlock F
> GLIBC_2.2 pthread_attr_getstack F
> diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
> index 5e4848be27..3b6fe85339 100644
> --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
> @@ -411,6 +411,7 @@ GLIBC_2.2 __pthread_mutexattr_init F
> GLIBC_2.2 __pthread_mutexattr_settype F
> GLIBC_2.2 __pthread_once 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_unlock F
> GLIBC_2.2 __pthread_rwlock_wrlock F
> @@ -1360,6 +1361,7 @@ GLIBC_2.2 pthread_mutexattr_setpshared F
> GLIBC_2.2 pthread_mutexattr_settype F
> GLIBC_2.2 pthread_once 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_unlock F
> GLIBC_2.2 pthread_rwlock_wrlock F
> @@ -2234,6 +2236,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
> index 6d11adb7da..5d186fc586 100644
> --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
> @@ -7,7 +7,6 @@ GLIBC_2.2 _IO_flockfile F
> GLIBC_2.2 _IO_ftrylockfile F
> GLIBC_2.2 _IO_funlockfile F
> GLIBC_2.2 __errno_location F
> -GLIBC_2.2 __pthread_rwlock_init F
> GLIBC_2.2 __pthread_rwlock_tryrdlock F
> GLIBC_2.2 __pthread_rwlock_trywrlock F
> GLIBC_2.2 flockfile F
> @@ -33,7 +32,6 @@ GLIBC_2.2 pthread_detach F
> GLIBC_2.2 pthread_getconcurrency F
> GLIBC_2.2 pthread_getcpuclockid F
> GLIBC_2.2 pthread_join F
> -GLIBC_2.2 pthread_rwlock_init F
> GLIBC_2.2 pthread_rwlock_timedrdlock F
> GLIBC_2.2 pthread_rwlock_timedwrlock F
> GLIBC_2.2 pthread_rwlock_tryrdlock F
> diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
> index 1975808993..764a2f71b1 100644
> --- a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
> @@ -372,6 +372,7 @@ GLIBC_2.2.5 __pthread_mutexattr_init F
> GLIBC_2.2.5 __pthread_mutexattr_settype F
> GLIBC_2.2.5 __pthread_once 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_unlock F
> GLIBC_2.2.5 __pthread_rwlock_wrlock F
> @@ -1328,6 +1329,7 @@ GLIBC_2.2.5 pthread_mutexattr_setpshared F
> GLIBC_2.2.5 pthread_mutexattr_settype F
> GLIBC_2.2.5 pthread_once 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_unlock F
> GLIBC_2.2.5 pthread_rwlock_wrlock F
> @@ -2195,6 +2197,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
> index 06ec562b00..8805d613fd 100644
> --- a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
> @@ -7,7 +7,6 @@ GLIBC_2.2.5 _IO_flockfile F
> GLIBC_2.2.5 _IO_ftrylockfile F
> GLIBC_2.2.5 _IO_funlockfile F
> GLIBC_2.2.5 __errno_location F
> -GLIBC_2.2.5 __pthread_rwlock_init F
> GLIBC_2.2.5 __pthread_rwlock_tryrdlock F
> GLIBC_2.2.5 __pthread_rwlock_trywrlock F
> GLIBC_2.2.5 flockfile F
> @@ -33,7 +32,6 @@ GLIBC_2.2.5 pthread_detach F
> GLIBC_2.2.5 pthread_getconcurrency F
> GLIBC_2.2.5 pthread_getcpuclockid F
> GLIBC_2.2.5 pthread_join F
> -GLIBC_2.2.5 pthread_rwlock_init 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
> diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
> index ff5dc484ba..cce82949fd 100644
> --- a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
> @@ -352,6 +352,7 @@ GLIBC_2.16 __pthread_mutexattr_init F
> GLIBC_2.16 __pthread_mutexattr_settype F
> GLIBC_2.16 __pthread_once 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_unlock F
> GLIBC_2.16 __pthread_rwlock_wrlock F
> @@ -1509,6 +1510,7 @@ GLIBC_2.16 pthread_mutexattr_setrobust_np F
> GLIBC_2.16 pthread_mutexattr_settype F
> GLIBC_2.16 pthread_once 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_unlock F
> GLIBC_2.16 pthread_rwlock_wrlock F
> @@ -2300,6 +2302,7 @@ GLIBC_2.34 pthread_once F
> GLIBC_2.34 pthread_rwlock_clockrdlock F
> GLIBC_2.34 pthread_rwlock_clockwrlock F
> GLIBC_2.34 pthread_rwlock_destroy F
> +GLIBC_2.34 pthread_rwlock_init F
> GLIBC_2.34 pthread_rwlock_rdlock F
> GLIBC_2.34 pthread_rwlock_unlock F
> GLIBC_2.34 pthread_rwlock_wrlock F
> diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
> index 92d8aa0635..6a9a29ec4b 100644
> --- a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
> @@ -4,7 +4,6 @@ GLIBC_2.16 _IO_funlockfile F
> GLIBC_2.16 __errno_location F
> GLIBC_2.16 __pthread_register_cancel F
> GLIBC_2.16 __pthread_register_cancel_defer F
> -GLIBC_2.16 __pthread_rwlock_init F
> GLIBC_2.16 __pthread_rwlock_tryrdlock F
> GLIBC_2.16 __pthread_rwlock_trywrlock F
> GLIBC_2.16 __pthread_unregister_cancel F
> @@ -35,7 +34,6 @@ GLIBC_2.16 pthread_getconcurrency F
> GLIBC_2.16 pthread_getcpuclockid F
> GLIBC_2.16 pthread_getname_np F
> GLIBC_2.16 pthread_join F
> -GLIBC_2.16 pthread_rwlock_init F
> GLIBC_2.16 pthread_rwlock_timedrdlock F
> GLIBC_2.16 pthread_rwlock_timedwrlock F
> GLIBC_2.16 pthread_rwlock_tryrdlock F
>
@@ -123,6 +123,7 @@ routines = \
pthread_rwlock_clockrdlock \
pthread_rwlock_clockwrlock \
pthread_rwlock_destroy \
+ pthread_rwlock_init \
pthread_rwlock_rdlock \
pthread_rwlock_unlock \
pthread_rwlock_wrlock \
@@ -181,7 +182,6 @@ libpthread-routines = \
pthread_getname \
pthread_join \
pthread_join_common \
- pthread_rwlock_init \
pthread_rwlock_timedrdlock \
pthread_rwlock_timedwrlock \
pthread_rwlock_tryrdlock \
@@ -67,12 +67,14 @@ libc {
pthread_mutexattr_gettype;
pthread_mutexattr_settype;
pthread_rwlock_destroy;
+ pthread_rwlock_init;
pthread_rwlock_rdlock;
pthread_rwlock_unlock;
pthread_rwlock_wrlock;
}
GLIBC_2.2 {
__pthread_rwlock_destroy;
+ __pthread_rwlock_init;
__pthread_rwlock_rdlock;
__pthread_rwlock_unlock;
__pthread_rwlock_wrlock;
@@ -280,7 +282,6 @@ libpthread {
pthread_attr_setstacksize;
pthread_create;
pthread_getconcurrency;
- pthread_rwlock_init;
pthread_rwlock_tryrdlock;
pthread_rwlock_trywrlock;
pthread_rwlockattr_destroy;
@@ -309,7 +310,6 @@ libpthread {
}
GLIBC_2.2 {
- __pthread_rwlock_init;
__pthread_rwlock_tryrdlock;
__pthread_rwlock_trywrlock;
pthread_attr_getstack;
@@ -19,7 +19,7 @@
#include "pthreadP.h"
#include <string.h>
#include <pthread-offsets.h>
-
+#include <shlib-compat.h>
static const struct pthread_rwlockattr default_rwlockattr =
{
@@ -30,7 +30,7 @@ static const struct pthread_rwlockattr default_rwlockattr =
/* See pthread_rwlock_common.c. */
int
-__pthread_rwlock_init (pthread_rwlock_t *rwlock,
+___pthread_rwlock_init (pthread_rwlock_t *rwlock,
const pthread_rwlockattr_t *attr)
{
ASSERT_TYPE_SIZE (pthread_rwlock_t, __SIZEOF_PTHREAD_RWLOCK_T);
@@ -55,4 +55,18 @@ __pthread_rwlock_init (pthread_rwlock_t *rwlock,
return 0;
}
-strong_alias (__pthread_rwlock_init, pthread_rwlock_init)
+versioned_symbol (libc, ___pthread_rwlock_init, pthread_rwlock_init,
+ GLIBC_2_34);
+libc_hidden_ver (___pthread_rwlock_init, __pthread_rwlock_init)
+#ifndef SHARED
+strong_alias (___pthread_rwlock_init, __pthread_rwlock_init)
+#endif
+
+#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_1, GLIBC_2_34)
+compat_symbol (libpthread, ___pthread_rwlock_init, pthread_rwlock_init,
+ GLIBC_2_1);
+#endif
+#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_2, GLIBC_2_34)
+compat_symbol (libpthread, ___pthread_rwlock_init, __pthread_rwlock_init,
+ GLIBC_2_2);
+#endif
@@ -114,14 +114,7 @@ _Static_assert (LLL_LOCK_INITIALIZER == 0, "LLL_LOCK_INITIALIZER != 0");
#else
# define __libc_lock_init(NAME) __pthread_mutex_init (&(NAME))
#endif
-#if defined SHARED && IS_IN (libc)
-/* ((NAME) = (__libc_rwlock_t) PTHREAD_RWLOCK_INITIALIZER) is inefficient. */
-# define __libc_rwlock_init(NAME) \
- ((void) __builtin_memset (&(NAME), '\0', sizeof (NAME)))
-#else
-# define __libc_rwlock_init(NAME) \
- __libc_maybe_call (__pthread_rwlock_init, (&(NAME), NULL), 0)
-#endif
+#define __libc_rwlock_init(NAME) __pthread_rwlock_init (&(NAME), NULL)
/* Finalize the named lock variable, which must be locked. It cannot be
used again until __libc_lock_init is called again on it. This must be
@@ -267,6 +260,7 @@ extern int __pthread_mutexattr_settype (pthread_mutexattr_t *__attr,
extern int __pthread_rwlock_init (pthread_rwlock_t *__rwlock,
const pthread_rwlockattr_t *__attr);
+libc_hidden_proto (__pthread_rwlock_init)
extern int __pthread_rwlock_destroy (pthread_rwlock_t *__rwlock);
@@ -299,7 +293,6 @@ weak_extern (__pthread_mutex_trylock)
weak_extern (__pthread_mutexattr_init)
weak_extern (__pthread_mutexattr_destroy)
weak_extern (__pthread_mutexattr_settype)
-weak_extern (__pthread_rwlock_init)
weak_extern (__pthread_rwlock_tryrdlock)
weak_extern (__pthread_rwlock_trywrlock)
weak_extern (__pthread_initialize)
@@ -351,6 +351,7 @@ GLIBC_2.17 __pthread_mutexattr_init F
GLIBC_2.17 __pthread_mutexattr_settype F
GLIBC_2.17 __pthread_once 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_unlock F
GLIBC_2.17 __pthread_rwlock_wrlock F
@@ -1502,6 +1503,7 @@ GLIBC_2.17 pthread_mutexattr_setrobust_np F
GLIBC_2.17 pthread_mutexattr_settype F
GLIBC_2.17 pthread_once 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_unlock F
GLIBC_2.17 pthread_rwlock_wrlock F
@@ -2285,6 +2287,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -4,7 +4,6 @@ GLIBC_2.17 _IO_funlockfile F
GLIBC_2.17 __errno_location F
GLIBC_2.17 __pthread_register_cancel F
GLIBC_2.17 __pthread_register_cancel_defer F
-GLIBC_2.17 __pthread_rwlock_init F
GLIBC_2.17 __pthread_rwlock_tryrdlock F
GLIBC_2.17 __pthread_rwlock_trywrlock F
GLIBC_2.17 __pthread_unregister_cancel F
@@ -35,7 +34,6 @@ GLIBC_2.17 pthread_getconcurrency F
GLIBC_2.17 pthread_getcpuclockid F
GLIBC_2.17 pthread_getname_np F
GLIBC_2.17 pthread_join F
-GLIBC_2.17 pthread_rwlock_init F
GLIBC_2.17 pthread_rwlock_timedrdlock F
GLIBC_2.17 pthread_rwlock_timedwrlock F
GLIBC_2.17 pthread_rwlock_tryrdlock F
@@ -1607,6 +1607,7 @@ GLIBC_2.1 pthread_attr_init F
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_unlock F
GLIBC_2.1 pthread_rwlock_wrlock F
@@ -1887,6 +1888,7 @@ GLIBC_2.2 __nl_langinfo_l F
GLIBC_2.2 __open64 F
GLIBC_2.2 __pread64 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_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
@@ -2366,6 +2368,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -24,7 +24,6 @@ GLIBC_2.1 pthread_attr_setstackaddr F
GLIBC_2.1 pthread_attr_setstacksize F
GLIBC_2.1 pthread_create F
GLIBC_2.1 pthread_getconcurrency F
-GLIBC_2.1 pthread_rwlock_init F
GLIBC_2.1 pthread_rwlock_tryrdlock F
GLIBC_2.1 pthread_rwlock_trywrlock F
GLIBC_2.1 pthread_rwlockattr_destroy F
@@ -49,7 +48,6 @@ GLIBC_2.12 pthread_getname_np F
GLIBC_2.12 pthread_setname_np F
GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
-GLIBC_2.2 __pthread_rwlock_init F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
GLIBC_2.2 pthread_attr_getstack F
@@ -340,6 +340,7 @@ GLIBC_2.32 __pthread_mutexattr_init F
GLIBC_2.32 __pthread_mutexattr_settype F
GLIBC_2.32 __pthread_once 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_unlock F
GLIBC_2.32 __pthread_rwlock_wrlock F
@@ -1432,6 +1433,7 @@ GLIBC_2.32 pthread_once F
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_unlock F
GLIBC_2.32 pthread_rwlock_wrlock F
@@ -2044,6 +2046,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -4,7 +4,6 @@ GLIBC_2.32 _IO_funlockfile F
GLIBC_2.32 __errno_location F
GLIBC_2.32 __pthread_register_cancel F
GLIBC_2.32 __pthread_register_cancel_defer F
-GLIBC_2.32 __pthread_rwlock_init F
GLIBC_2.32 __pthread_rwlock_tryrdlock F
GLIBC_2.32 __pthread_rwlock_trywrlock F
GLIBC_2.32 __pthread_unregister_cancel F
@@ -50,7 +49,6 @@ GLIBC_2.32 pthread_getconcurrency F
GLIBC_2.32 pthread_getcpuclockid F
GLIBC_2.32 pthread_getname_np F
GLIBC_2.32 pthread_join F
-GLIBC_2.32 pthread_rwlock_init F
GLIBC_2.32 pthread_rwlock_timedrdlock F
GLIBC_2.32 pthread_rwlock_timedwrlock F
GLIBC_2.32 pthread_rwlock_tryrdlock F
@@ -207,6 +207,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -556,6 +557,7 @@ GLIBC_2.4 __pthread_mutexattr_init F
GLIBC_2.4 __pthread_mutexattr_settype F
GLIBC_2.4 __pthread_once 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_unlock F
GLIBC_2.4 __pthread_rwlock_wrlock F
@@ -1651,6 +1653,7 @@ GLIBC_2.4 pthread_mutexattr_setrobust_np F
GLIBC_2.4 pthread_mutexattr_settype F
GLIBC_2.4 pthread_once 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_unlock F
GLIBC_2.4 pthread_rwlock_wrlock F
@@ -33,7 +33,6 @@ GLIBC_2.4 __errno_location F
GLIBC_2.4 __libpthread_version_placeholder F
GLIBC_2.4 __pthread_register_cancel F
GLIBC_2.4 __pthread_register_cancel_defer F
-GLIBC_2.4 __pthread_rwlock_init F
GLIBC_2.4 __pthread_rwlock_tryrdlock F
GLIBC_2.4 __pthread_rwlock_trywrlock F
GLIBC_2.4 __pthread_unregister_cancel F
@@ -63,7 +62,6 @@ GLIBC_2.4 pthread_detach F
GLIBC_2.4 pthread_getconcurrency F
GLIBC_2.4 pthread_getcpuclockid F
GLIBC_2.4 pthread_join F
-GLIBC_2.4 pthread_rwlock_init F
GLIBC_2.4 pthread_rwlock_timedrdlock F
GLIBC_2.4 pthread_rwlock_timedwrlock F
GLIBC_2.4 pthread_rwlock_tryrdlock F
@@ -204,6 +204,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -553,6 +554,7 @@ GLIBC_2.4 __pthread_mutexattr_init F
GLIBC_2.4 __pthread_mutexattr_settype F
GLIBC_2.4 __pthread_once 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_unlock F
GLIBC_2.4 __pthread_rwlock_wrlock F
@@ -1648,6 +1650,7 @@ GLIBC_2.4 pthread_mutexattr_setrobust_np F
GLIBC_2.4 pthread_mutexattr_settype F
GLIBC_2.4 pthread_once 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_unlock F
GLIBC_2.4 pthread_rwlock_wrlock F
@@ -33,7 +33,6 @@ GLIBC_2.4 __errno_location F
GLIBC_2.4 __libpthread_version_placeholder F
GLIBC_2.4 __pthread_register_cancel F
GLIBC_2.4 __pthread_register_cancel_defer F
-GLIBC_2.4 __pthread_rwlock_init F
GLIBC_2.4 __pthread_rwlock_tryrdlock F
GLIBC_2.4 __pthread_rwlock_trywrlock F
GLIBC_2.4 __pthread_unregister_cancel F
@@ -63,7 +62,6 @@ GLIBC_2.4 pthread_detach F
GLIBC_2.4 pthread_getconcurrency F
GLIBC_2.4 pthread_getcpuclockid F
GLIBC_2.4 pthread_join F
-GLIBC_2.4 pthread_rwlock_init F
GLIBC_2.4 pthread_rwlock_timedrdlock F
GLIBC_2.4 pthread_rwlock_timedwrlock F
GLIBC_2.4 pthread_rwlock_tryrdlock F
@@ -344,6 +344,7 @@ GLIBC_2.29 __pthread_mutexattr_init F
GLIBC_2.29 __pthread_mutexattr_settype F
GLIBC_2.29 __pthread_once 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_unlock F
GLIBC_2.29 __pthread_rwlock_wrlock F
@@ -1489,6 +1490,7 @@ GLIBC_2.29 pthread_mutexattr_setrobust_np F
GLIBC_2.29 pthread_mutexattr_settype F
GLIBC_2.29 pthread_once 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_unlock F
GLIBC_2.29 pthread_rwlock_wrlock F
@@ -2228,6 +2230,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -4,7 +4,6 @@ GLIBC_2.29 _IO_funlockfile F
GLIBC_2.29 __errno_location F
GLIBC_2.29 __pthread_register_cancel F
GLIBC_2.29 __pthread_register_cancel_defer F
-GLIBC_2.29 __pthread_rwlock_init F
GLIBC_2.29 __pthread_rwlock_tryrdlock F
GLIBC_2.29 __pthread_rwlock_trywrlock F
GLIBC_2.29 __pthread_unregister_cancel F
@@ -49,7 +48,6 @@ GLIBC_2.29 pthread_getconcurrency F
GLIBC_2.29 pthread_getcpuclockid F
GLIBC_2.29 pthread_getname_np F
GLIBC_2.29 pthread_join F
-GLIBC_2.29 pthread_rwlock_init F
GLIBC_2.29 pthread_rwlock_timedrdlock F
GLIBC_2.29 pthread_rwlock_timedwrlock F
GLIBC_2.29 pthread_rwlock_tryrdlock F
@@ -370,6 +370,7 @@ GLIBC_2.2 __pthread_mutexattr_init F
GLIBC_2.2 __pthread_mutexattr_settype F
GLIBC_2.2 __pthread_once 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_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
@@ -1313,6 +1314,7 @@ GLIBC_2.2 pthread_mutexattr_setpshared F
GLIBC_2.2 pthread_mutexattr_settype F
GLIBC_2.2 pthread_once 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_unlock F
GLIBC_2.2 pthread_rwlock_wrlock F
@@ -2179,6 +2181,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -7,7 +7,6 @@ GLIBC_2.2 _IO_flockfile F
GLIBC_2.2 _IO_ftrylockfile F
GLIBC_2.2 _IO_funlockfile F
GLIBC_2.2 __errno_location F
-GLIBC_2.2 __pthread_rwlock_init F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
GLIBC_2.2 flockfile F
@@ -33,7 +32,6 @@ GLIBC_2.2 pthread_detach F
GLIBC_2.2 pthread_getconcurrency F
GLIBC_2.2 pthread_getcpuclockid F
GLIBC_2.2 pthread_join F
-GLIBC_2.2 pthread_rwlock_init F
GLIBC_2.2 pthread_rwlock_timedrdlock F
GLIBC_2.2 pthread_rwlock_timedwrlock F
GLIBC_2.2 pthread_rwlock_tryrdlock F
@@ -1575,6 +1575,7 @@ GLIBC_2.1 pthread_attr_init F
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_unlock F
GLIBC_2.1 pthread_rwlock_wrlock F
@@ -1891,6 +1892,7 @@ GLIBC_2.2 __nl_langinfo_l F
GLIBC_2.2 __open64 F
GLIBC_2.2 __pread64 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_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
@@ -2356,6 +2358,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -24,7 +24,6 @@ GLIBC_2.1 pthread_attr_setstackaddr F
GLIBC_2.1 pthread_attr_setstacksize F
GLIBC_2.1 pthread_create F
GLIBC_2.1 pthread_getconcurrency F
-GLIBC_2.1 pthread_rwlock_init F
GLIBC_2.1 pthread_rwlock_tryrdlock F
GLIBC_2.1 pthread_rwlock_trywrlock F
GLIBC_2.1 pthread_rwlockattr_destroy F
@@ -49,7 +48,6 @@ GLIBC_2.12 pthread_getname_np F
GLIBC_2.12 pthread_setname_np F
GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
-GLIBC_2.2 __pthread_rwlock_init F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
GLIBC_2.2 pthread_attr_getstack F
@@ -374,6 +374,7 @@ GLIBC_2.2 __pthread_mutexattr_init F
GLIBC_2.2 __pthread_mutexattr_settype F
GLIBC_2.2 __pthread_once 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_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
@@ -1334,6 +1335,7 @@ GLIBC_2.2 pthread_mutexattr_setpshared F
GLIBC_2.2 pthread_mutexattr_settype F
GLIBC_2.2 pthread_once 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_unlock F
GLIBC_2.2 pthread_rwlock_wrlock F
@@ -2213,6 +2215,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -7,7 +7,6 @@ GLIBC_2.2 _IO_flockfile F
GLIBC_2.2 _IO_ftrylockfile F
GLIBC_2.2 _IO_funlockfile F
GLIBC_2.2 __errno_location F
-GLIBC_2.2 __pthread_rwlock_init F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
GLIBC_2.2 flockfile F
@@ -33,7 +32,6 @@ GLIBC_2.2 pthread_detach F
GLIBC_2.2 pthread_getconcurrency F
GLIBC_2.2 pthread_getcpuclockid F
GLIBC_2.2 pthread_join F
-GLIBC_2.2 pthread_rwlock_init F
GLIBC_2.2 pthread_rwlock_timedrdlock F
GLIBC_2.2 pthread_rwlock_timedwrlock F
GLIBC_2.2 pthread_rwlock_tryrdlock F
@@ -208,6 +208,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -542,6 +543,7 @@ GLIBC_2.4 __pthread_mutexattr_init F
GLIBC_2.4 __pthread_mutexattr_settype F
GLIBC_2.4 __pthread_once 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_unlock F
GLIBC_2.4 __pthread_rwlock_wrlock F
@@ -1631,6 +1633,7 @@ GLIBC_2.4 pthread_mutexattr_setrobust_np F
GLIBC_2.4 pthread_mutexattr_settype F
GLIBC_2.4 pthread_once 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_unlock F
GLIBC_2.4 pthread_rwlock_wrlock F
@@ -33,7 +33,6 @@ GLIBC_2.4 __errno_location F
GLIBC_2.4 __libpthread_version_placeholder F
GLIBC_2.4 __pthread_register_cancel F
GLIBC_2.4 __pthread_register_cancel_defer F
-GLIBC_2.4 __pthread_rwlock_init F
GLIBC_2.4 __pthread_rwlock_tryrdlock F
GLIBC_2.4 __pthread_rwlock_trywrlock F
GLIBC_2.4 __pthread_unregister_cancel F
@@ -63,7 +62,6 @@ GLIBC_2.4 pthread_detach F
GLIBC_2.4 pthread_getconcurrency F
GLIBC_2.4 pthread_getcpuclockid F
GLIBC_2.4 pthread_join F
-GLIBC_2.4 pthread_rwlock_init F
GLIBC_2.4 pthread_rwlock_timedrdlock F
GLIBC_2.4 pthread_rwlock_timedwrlock F
GLIBC_2.4 pthread_rwlock_tryrdlock F
@@ -1571,6 +1571,7 @@ GLIBC_2.1 pthread_attr_init F
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_unlock F
GLIBC_2.1 pthread_rwlock_wrlock F
@@ -1847,6 +1848,7 @@ GLIBC_2.2 __nl_langinfo_l F
GLIBC_2.2 __open64 F
GLIBC_2.2 __pread64 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_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
@@ -2299,6 +2301,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -24,7 +24,6 @@ GLIBC_2.1 pthread_attr_setstackaddr F
GLIBC_2.1 pthread_attr_setstacksize F
GLIBC_2.1 pthread_create F
GLIBC_2.1 pthread_getconcurrency F
-GLIBC_2.1 pthread_rwlock_init F
GLIBC_2.1 pthread_rwlock_tryrdlock F
GLIBC_2.1 pthread_rwlock_trywrlock F
GLIBC_2.1 pthread_rwlockattr_destroy F
@@ -49,7 +48,6 @@ GLIBC_2.12 pthread_getname_np F
GLIBC_2.12 pthread_setname_np F
GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
-GLIBC_2.2 __pthread_rwlock_init F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
GLIBC_2.2 pthread_attr_getstack F
@@ -352,6 +352,7 @@ GLIBC_2.18 __pthread_mutexattr_init F
GLIBC_2.18 __pthread_mutexattr_settype F
GLIBC_2.18 __pthread_once 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_unlock F
GLIBC_2.18 __pthread_rwlock_wrlock F
@@ -1504,6 +1505,7 @@ GLIBC_2.18 pthread_mutexattr_setrobust_np F
GLIBC_2.18 pthread_mutexattr_settype F
GLIBC_2.18 pthread_once 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_unlock F
GLIBC_2.18 pthread_rwlock_wrlock F
@@ -2279,6 +2281,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -4,7 +4,6 @@ GLIBC_2.18 _IO_funlockfile F
GLIBC_2.18 __errno_location F
GLIBC_2.18 __pthread_register_cancel F
GLIBC_2.18 __pthread_register_cancel_defer F
-GLIBC_2.18 __pthread_rwlock_init F
GLIBC_2.18 __pthread_rwlock_tryrdlock F
GLIBC_2.18 __pthread_rwlock_trywrlock F
GLIBC_2.18 __pthread_unregister_cancel F
@@ -36,7 +35,6 @@ GLIBC_2.18 pthread_getconcurrency F
GLIBC_2.18 pthread_getcpuclockid F
GLIBC_2.18 pthread_getname_np F
GLIBC_2.18 pthread_join F
-GLIBC_2.18 pthread_rwlock_init F
GLIBC_2.18 pthread_rwlock_timedrdlock F
GLIBC_2.18 pthread_rwlock_timedwrlock F
GLIBC_2.18 pthread_rwlock_tryrdlock F
@@ -352,6 +352,7 @@ GLIBC_2.18 __pthread_mutexattr_init F
GLIBC_2.18 __pthread_mutexattr_settype F
GLIBC_2.18 __pthread_once 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_unlock F
GLIBC_2.18 __pthread_rwlock_wrlock F
@@ -1504,6 +1505,7 @@ GLIBC_2.18 pthread_mutexattr_setrobust_np F
GLIBC_2.18 pthread_mutexattr_settype F
GLIBC_2.18 pthread_once 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_unlock F
GLIBC_2.18 pthread_rwlock_wrlock F
@@ -2276,6 +2278,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -4,7 +4,6 @@ GLIBC_2.18 _IO_funlockfile F
GLIBC_2.18 __errno_location F
GLIBC_2.18 __pthread_register_cancel F
GLIBC_2.18 __pthread_register_cancel_defer F
-GLIBC_2.18 __pthread_rwlock_init F
GLIBC_2.18 __pthread_rwlock_tryrdlock F
GLIBC_2.18 __pthread_rwlock_trywrlock F
GLIBC_2.18 __pthread_unregister_cancel F
@@ -36,7 +35,6 @@ GLIBC_2.18 pthread_getconcurrency F
GLIBC_2.18 pthread_getcpuclockid F
GLIBC_2.18 pthread_getname_np F
GLIBC_2.18 pthread_join F
-GLIBC_2.18 pthread_rwlock_init F
GLIBC_2.18 pthread_rwlock_timedrdlock F
GLIBC_2.18 pthread_rwlock_timedwrlock F
GLIBC_2.18 pthread_rwlock_tryrdlock F
@@ -1545,6 +1545,7 @@ GLIBC_2.2 __open64 F
GLIBC_2.2 __poll F
GLIBC_2.2 __pread64 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_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
@@ -1843,6 +1844,7 @@ GLIBC_2.2 pthread_mutexattr_gettype F
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_unlock F
GLIBC_2.2 pthread_rwlock_wrlock F
@@ -2262,6 +2264,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -21,7 +21,6 @@ GLIBC_2.12 pthread_getname_np F
GLIBC_2.12 pthread_setname_np F
GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
-GLIBC_2.2 __pthread_rwlock_init F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
GLIBC_2.2 pthread_attr_getguardsize F
@@ -41,7 +40,6 @@ GLIBC_2.2 pthread_barrierattr_setpshared F
GLIBC_2.2 pthread_create F
GLIBC_2.2 pthread_getconcurrency F
GLIBC_2.2 pthread_getcpuclockid F
-GLIBC_2.2 pthread_rwlock_init F
GLIBC_2.2 pthread_rwlock_timedrdlock F
GLIBC_2.2 pthread_rwlock_timedwrlock F
GLIBC_2.2 pthread_rwlock_tryrdlock F
@@ -1543,6 +1543,7 @@ GLIBC_2.2 __open64 F
GLIBC_2.2 __poll F
GLIBC_2.2 __pread64 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_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
@@ -1841,6 +1842,7 @@ GLIBC_2.2 pthread_mutexattr_gettype F
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_unlock F
GLIBC_2.2 pthread_rwlock_wrlock F
@@ -2260,6 +2262,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -21,7 +21,6 @@ GLIBC_2.12 pthread_getname_np F
GLIBC_2.12 pthread_setname_np F
GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
-GLIBC_2.2 __pthread_rwlock_init F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
GLIBC_2.2 pthread_attr_getguardsize F
@@ -41,7 +40,6 @@ GLIBC_2.2 pthread_barrierattr_setpshared F
GLIBC_2.2 pthread_create F
GLIBC_2.2 pthread_getconcurrency F
GLIBC_2.2 pthread_getcpuclockid F
-GLIBC_2.2 pthread_rwlock_init F
GLIBC_2.2 pthread_rwlock_timedrdlock F
GLIBC_2.2 pthread_rwlock_timedwrlock F
GLIBC_2.2 pthread_rwlock_tryrdlock F
@@ -1543,6 +1543,7 @@ GLIBC_2.2 __open64 F
GLIBC_2.2 __poll F
GLIBC_2.2 __pread64 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_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
@@ -1841,6 +1842,7 @@ GLIBC_2.2 pthread_mutexattr_gettype F
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_unlock F
GLIBC_2.2 pthread_rwlock_wrlock F
@@ -2268,6 +2270,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -1539,6 +1539,7 @@ GLIBC_2.2 __open64 F
GLIBC_2.2 __poll F
GLIBC_2.2 __pread64 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_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
@@ -1837,6 +1838,7 @@ GLIBC_2.2 pthread_mutexattr_gettype F
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_unlock F
GLIBC_2.2 pthread_rwlock_wrlock F
@@ -2262,6 +2264,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -389,6 +389,7 @@ GLIBC_2.21 __pthread_mutexattr_init F
GLIBC_2.21 __pthread_mutexattr_settype F
GLIBC_2.21 __pthread_once 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_unlock F
GLIBC_2.21 __pthread_rwlock_wrlock F
@@ -1547,6 +1548,7 @@ GLIBC_2.21 pthread_mutexattr_setrobust_np F
GLIBC_2.21 pthread_mutexattr_settype F
GLIBC_2.21 pthread_once 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_unlock F
GLIBC_2.21 pthread_rwlock_wrlock F
@@ -2318,6 +2320,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -4,7 +4,6 @@ GLIBC_2.21 _IO_funlockfile F
GLIBC_2.21 __errno_location F
GLIBC_2.21 __pthread_register_cancel F
GLIBC_2.21 __pthread_register_cancel_defer F
-GLIBC_2.21 __pthread_rwlock_init F
GLIBC_2.21 __pthread_rwlock_tryrdlock F
GLIBC_2.21 __pthread_rwlock_trywrlock F
GLIBC_2.21 __pthread_unregister_cancel F
@@ -36,7 +35,6 @@ GLIBC_2.21 pthread_getconcurrency F
GLIBC_2.21 pthread_getcpuclockid F
GLIBC_2.21 pthread_getname_np F
GLIBC_2.21 pthread_join F
-GLIBC_2.21 pthread_rwlock_init F
GLIBC_2.21 pthread_rwlock_timedrdlock F
GLIBC_2.21 pthread_rwlock_timedwrlock F
GLIBC_2.21 pthread_rwlock_tryrdlock F
@@ -1579,6 +1579,7 @@ GLIBC_2.1 pthread_attr_init F
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_unlock F
GLIBC_2.1 pthread_rwlock_wrlock F
@@ -1853,6 +1854,7 @@ GLIBC_2.2 __nl_langinfo_l F
GLIBC_2.2 __open64 F
GLIBC_2.2 __pread64 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_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
@@ -2326,6 +2328,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -24,7 +24,6 @@ GLIBC_2.1 pthread_attr_setstackaddr F
GLIBC_2.1 pthread_attr_setstacksize F
GLIBC_2.1 pthread_create F
GLIBC_2.1 pthread_getconcurrency F
-GLIBC_2.1 pthread_rwlock_init F
GLIBC_2.1 pthread_rwlock_tryrdlock F
GLIBC_2.1 pthread_rwlock_trywrlock F
GLIBC_2.1 pthread_rwlockattr_destroy F
@@ -49,7 +48,6 @@ GLIBC_2.12 pthread_getname_np F
GLIBC_2.12 pthread_setname_np F
GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
-GLIBC_2.2 __pthread_rwlock_init F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
GLIBC_2.2 pthread_attr_getstack F
@@ -1579,6 +1579,7 @@ GLIBC_2.1 pthread_attr_init F
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_unlock F
GLIBC_2.1 pthread_rwlock_wrlock F
@@ -1857,6 +1858,7 @@ GLIBC_2.2 __nl_langinfo_l F
GLIBC_2.2 __open64 F
GLIBC_2.2 __pread64 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_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
@@ -2359,6 +2361,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -423,6 +423,7 @@ GLIBC_2.3 __pthread_mutexattr_init F
GLIBC_2.3 __pthread_mutexattr_settype F
GLIBC_2.3 __pthread_once 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_unlock F
GLIBC_2.3 __pthread_rwlock_wrlock F
@@ -1419,6 +1420,7 @@ GLIBC_2.3 pthread_mutexattr_setpshared F
GLIBC_2.3 pthread_mutexattr_settype F
GLIBC_2.3 pthread_once 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_unlock F
GLIBC_2.3 pthread_rwlock_wrlock F
@@ -2180,6 +2182,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -28,7 +28,6 @@ GLIBC_2.3 _IO_flockfile F
GLIBC_2.3 _IO_ftrylockfile F
GLIBC_2.3 _IO_funlockfile F
GLIBC_2.3 __errno_location F
-GLIBC_2.3 __pthread_rwlock_init F
GLIBC_2.3 __pthread_rwlock_tryrdlock F
GLIBC_2.3 __pthread_rwlock_trywrlock F
GLIBC_2.3 flockfile F
@@ -54,7 +53,6 @@ GLIBC_2.3 pthread_detach F
GLIBC_2.3 pthread_getconcurrency F
GLIBC_2.3 pthread_getcpuclockid F
GLIBC_2.3 pthread_join F
-GLIBC_2.3 pthread_rwlock_init F
GLIBC_2.3 pthread_rwlock_timedrdlock F
GLIBC_2.3 pthread_rwlock_timedwrlock F
GLIBC_2.3 pthread_rwlock_tryrdlock F
@@ -437,6 +437,7 @@ GLIBC_2.17 __pthread_mutexattr_init F
GLIBC_2.17 __pthread_mutexattr_settype F
GLIBC_2.17 __pthread_once 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_unlock F
GLIBC_2.17 __pthread_rwlock_wrlock F
@@ -1590,6 +1591,7 @@ GLIBC_2.17 pthread_mutexattr_setrobust_np F
GLIBC_2.17 pthread_mutexattr_settype F
GLIBC_2.17 pthread_once 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_unlock F
GLIBC_2.17 pthread_rwlock_wrlock F
@@ -2481,6 +2483,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -4,7 +4,6 @@ GLIBC_2.17 _IO_funlockfile F
GLIBC_2.17 __errno_location F
GLIBC_2.17 __pthread_register_cancel F
GLIBC_2.17 __pthread_register_cancel_defer F
-GLIBC_2.17 __pthread_rwlock_init F
GLIBC_2.17 __pthread_rwlock_tryrdlock F
GLIBC_2.17 __pthread_rwlock_trywrlock F
GLIBC_2.17 __pthread_unregister_cancel F
@@ -35,7 +34,6 @@ GLIBC_2.17 pthread_getconcurrency F
GLIBC_2.17 pthread_getcpuclockid F
GLIBC_2.17 pthread_getname_np F
GLIBC_2.17 pthread_join F
-GLIBC_2.17 pthread_rwlock_init F
GLIBC_2.17 pthread_rwlock_timedrdlock F
GLIBC_2.17 pthread_rwlock_timedwrlock F
GLIBC_2.17 pthread_rwlock_tryrdlock F
@@ -337,6 +337,7 @@ GLIBC_2.33 __pthread_mutexattr_init F
GLIBC_2.33 __pthread_mutexattr_settype F
GLIBC_2.33 __pthread_once 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_unlock F
GLIBC_2.33 __pthread_rwlock_wrlock F
@@ -1434,6 +1435,7 @@ GLIBC_2.33 pthread_once F
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_unlock F
GLIBC_2.33 pthread_rwlock_wrlock F
@@ -2046,6 +2048,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -4,7 +4,6 @@ GLIBC_2.33 _IO_funlockfile F
GLIBC_2.33 __errno_location F
GLIBC_2.33 __pthread_register_cancel F
GLIBC_2.33 __pthread_register_cancel_defer F
-GLIBC_2.33 __pthread_rwlock_init F
GLIBC_2.33 __pthread_rwlock_tryrdlock F
GLIBC_2.33 __pthread_rwlock_trywrlock F
GLIBC_2.33 __pthread_unregister_cancel F
@@ -50,7 +49,6 @@ GLIBC_2.33 pthread_getconcurrency F
GLIBC_2.33 pthread_getcpuclockid F
GLIBC_2.33 pthread_getname_np F
GLIBC_2.33 pthread_join F
-GLIBC_2.33 pthread_rwlock_init F
GLIBC_2.33 pthread_rwlock_timedrdlock F
GLIBC_2.33 pthread_rwlock_timedwrlock F
GLIBC_2.33 pthread_rwlock_tryrdlock F
@@ -348,6 +348,7 @@ GLIBC_2.27 __pthread_mutexattr_init F
GLIBC_2.27 __pthread_mutexattr_settype F
GLIBC_2.27 __pthread_once 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_unlock F
GLIBC_2.27 __pthread_rwlock_wrlock F
@@ -1492,6 +1493,7 @@ GLIBC_2.27 pthread_mutexattr_setrobust_np F
GLIBC_2.27 pthread_mutexattr_settype F
GLIBC_2.27 pthread_once 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_unlock F
GLIBC_2.27 pthread_rwlock_wrlock F
@@ -2246,6 +2248,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -4,7 +4,6 @@ GLIBC_2.27 _IO_funlockfile F
GLIBC_2.27 __errno_location F
GLIBC_2.27 __pthread_register_cancel F
GLIBC_2.27 __pthread_register_cancel_defer F
-GLIBC_2.27 __pthread_rwlock_init F
GLIBC_2.27 __pthread_rwlock_tryrdlock F
GLIBC_2.27 __pthread_rwlock_trywrlock F
GLIBC_2.27 __pthread_unregister_cancel F
@@ -36,7 +35,6 @@ GLIBC_2.27 pthread_getconcurrency F
GLIBC_2.27 pthread_getcpuclockid F
GLIBC_2.27 pthread_getname_np F
GLIBC_2.27 pthread_join F
-GLIBC_2.27 pthread_rwlock_init F
GLIBC_2.27 pthread_rwlock_timedrdlock F
GLIBC_2.27 pthread_rwlock_timedwrlock F
GLIBC_2.27 pthread_rwlock_tryrdlock F
@@ -1571,6 +1571,7 @@ GLIBC_2.1 pthread_attr_init F
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_unlock F
GLIBC_2.1 pthread_rwlock_wrlock F
@@ -1851,6 +1852,7 @@ GLIBC_2.2 __nl_langinfo_l F
GLIBC_2.2 __open64 F
GLIBC_2.2 __pread64 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_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
@@ -2324,6 +2326,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -24,7 +24,6 @@ GLIBC_2.1 pthread_attr_setstackaddr F
GLIBC_2.1 pthread_attr_setstacksize F
GLIBC_2.1 pthread_create F
GLIBC_2.1 pthread_getconcurrency F
-GLIBC_2.1 pthread_rwlock_init F
GLIBC_2.1 pthread_rwlock_tryrdlock F
GLIBC_2.1 pthread_rwlock_trywrlock F
GLIBC_2.1 pthread_rwlockattr_destroy F
@@ -50,7 +49,6 @@ GLIBC_2.12 pthread_setname_np F
GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
GLIBC_2.19 __libpthread_version_placeholder F
-GLIBC_2.2 __pthread_rwlock_init F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
GLIBC_2.2 pthread_attr_getstack F
@@ -384,6 +384,7 @@ GLIBC_2.2 __pthread_mutexattr_init F
GLIBC_2.2 __pthread_mutexattr_settype F
GLIBC_2.2 __pthread_once 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_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
@@ -1331,6 +1332,7 @@ GLIBC_2.2 pthread_mutexattr_setpshared F
GLIBC_2.2 pthread_mutexattr_settype F
GLIBC_2.2 pthread_once 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_unlock F
GLIBC_2.2 pthread_rwlock_wrlock F
@@ -2217,6 +2219,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -8,7 +8,6 @@ GLIBC_2.2 _IO_flockfile F
GLIBC_2.2 _IO_ftrylockfile F
GLIBC_2.2 _IO_funlockfile F
GLIBC_2.2 __errno_location F
-GLIBC_2.2 __pthread_rwlock_init F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
GLIBC_2.2 flockfile F
@@ -34,7 +33,6 @@ GLIBC_2.2 pthread_detach F
GLIBC_2.2 pthread_getconcurrency F
GLIBC_2.2 pthread_getcpuclockid F
GLIBC_2.2 pthread_join F
-GLIBC_2.2 pthread_rwlock_init F
GLIBC_2.2 pthread_rwlock_timedrdlock F
GLIBC_2.2 pthread_rwlock_timedwrlock F
GLIBC_2.2 pthread_rwlock_tryrdlock F
@@ -373,6 +373,7 @@ GLIBC_2.2 __pthread_mutexattr_init F
GLIBC_2.2 __pthread_mutexattr_settype F
GLIBC_2.2 __pthread_once 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_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
@@ -1317,6 +1318,7 @@ GLIBC_2.2 pthread_mutexattr_setpshared F
GLIBC_2.2 pthread_mutexattr_settype F
GLIBC_2.2 pthread_once 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_unlock F
GLIBC_2.2 pthread_rwlock_wrlock F
@@ -2186,6 +2188,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -7,7 +7,6 @@ GLIBC_2.2 _IO_flockfile F
GLIBC_2.2 _IO_ftrylockfile F
GLIBC_2.2 _IO_funlockfile F
GLIBC_2.2 __errno_location F
-GLIBC_2.2 __pthread_rwlock_init F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
GLIBC_2.2 flockfile F
@@ -33,7 +32,6 @@ GLIBC_2.2 pthread_detach F
GLIBC_2.2 pthread_getconcurrency F
GLIBC_2.2 pthread_getcpuclockid F
GLIBC_2.2 pthread_join F
-GLIBC_2.2 pthread_rwlock_init F
GLIBC_2.2 pthread_rwlock_timedrdlock F
GLIBC_2.2 pthread_rwlock_timedwrlock F
GLIBC_2.2 pthread_rwlock_tryrdlock F
@@ -373,6 +373,7 @@ GLIBC_2.2 __pthread_mutexattr_init F
GLIBC_2.2 __pthread_mutexattr_settype F
GLIBC_2.2 __pthread_once 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_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
@@ -1317,6 +1318,7 @@ GLIBC_2.2 pthread_mutexattr_setpshared F
GLIBC_2.2 pthread_mutexattr_settype F
GLIBC_2.2 pthread_once 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_unlock F
GLIBC_2.2 pthread_rwlock_wrlock F
@@ -2183,6 +2185,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -7,7 +7,6 @@ GLIBC_2.2 _IO_flockfile F
GLIBC_2.2 _IO_ftrylockfile F
GLIBC_2.2 _IO_funlockfile F
GLIBC_2.2 __errno_location F
-GLIBC_2.2 __pthread_rwlock_init F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
GLIBC_2.2 flockfile F
@@ -33,7 +32,6 @@ GLIBC_2.2 pthread_detach F
GLIBC_2.2 pthread_getconcurrency F
GLIBC_2.2 pthread_getcpuclockid F
GLIBC_2.2 pthread_join F
-GLIBC_2.2 pthread_rwlock_init F
GLIBC_2.2 pthread_rwlock_timedrdlock F
GLIBC_2.2 pthread_rwlock_timedwrlock F
GLIBC_2.2 pthread_rwlock_tryrdlock F
@@ -1572,6 +1572,7 @@ GLIBC_2.1 pthread_attr_init F
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_unlock F
GLIBC_2.1 pthread_rwlock_wrlock F
@@ -1849,6 +1850,7 @@ GLIBC_2.2 __nl_langinfo_l F
GLIBC_2.2 __open64 F
GLIBC_2.2 __pread64 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_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
@@ -2315,6 +2317,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -24,7 +24,6 @@ GLIBC_2.1 pthread_attr_setstackaddr F
GLIBC_2.1 pthread_attr_setstacksize F
GLIBC_2.1 pthread_create F
GLIBC_2.1 pthread_getconcurrency F
-GLIBC_2.1 pthread_rwlock_init F
GLIBC_2.1 pthread_rwlock_tryrdlock F
GLIBC_2.1 pthread_rwlock_trywrlock F
GLIBC_2.1 pthread_rwlockattr_destroy F
@@ -49,7 +48,6 @@ GLIBC_2.12 pthread_getname_np F
GLIBC_2.12 pthread_setname_np F
GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
-GLIBC_2.2 __pthread_rwlock_init F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
GLIBC_2.2 pthread_attr_getstack F
@@ -411,6 +411,7 @@ GLIBC_2.2 __pthread_mutexattr_init F
GLIBC_2.2 __pthread_mutexattr_settype F
GLIBC_2.2 __pthread_once 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_unlock F
GLIBC_2.2 __pthread_rwlock_wrlock F
@@ -1360,6 +1361,7 @@ GLIBC_2.2 pthread_mutexattr_setpshared F
GLIBC_2.2 pthread_mutexattr_settype F
GLIBC_2.2 pthread_once 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_unlock F
GLIBC_2.2 pthread_rwlock_wrlock F
@@ -2234,6 +2236,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -7,7 +7,6 @@ GLIBC_2.2 _IO_flockfile F
GLIBC_2.2 _IO_ftrylockfile F
GLIBC_2.2 _IO_funlockfile F
GLIBC_2.2 __errno_location F
-GLIBC_2.2 __pthread_rwlock_init F
GLIBC_2.2 __pthread_rwlock_tryrdlock F
GLIBC_2.2 __pthread_rwlock_trywrlock F
GLIBC_2.2 flockfile F
@@ -33,7 +32,6 @@ GLIBC_2.2 pthread_detach F
GLIBC_2.2 pthread_getconcurrency F
GLIBC_2.2 pthread_getcpuclockid F
GLIBC_2.2 pthread_join F
-GLIBC_2.2 pthread_rwlock_init F
GLIBC_2.2 pthread_rwlock_timedrdlock F
GLIBC_2.2 pthread_rwlock_timedwrlock F
GLIBC_2.2 pthread_rwlock_tryrdlock F
@@ -372,6 +372,7 @@ GLIBC_2.2.5 __pthread_mutexattr_init F
GLIBC_2.2.5 __pthread_mutexattr_settype F
GLIBC_2.2.5 __pthread_once 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_unlock F
GLIBC_2.2.5 __pthread_rwlock_wrlock F
@@ -1328,6 +1329,7 @@ GLIBC_2.2.5 pthread_mutexattr_setpshared F
GLIBC_2.2.5 pthread_mutexattr_settype F
GLIBC_2.2.5 pthread_once 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_unlock F
GLIBC_2.2.5 pthread_rwlock_wrlock F
@@ -2195,6 +2197,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -7,7 +7,6 @@ GLIBC_2.2.5 _IO_flockfile F
GLIBC_2.2.5 _IO_ftrylockfile F
GLIBC_2.2.5 _IO_funlockfile F
GLIBC_2.2.5 __errno_location F
-GLIBC_2.2.5 __pthread_rwlock_init F
GLIBC_2.2.5 __pthread_rwlock_tryrdlock F
GLIBC_2.2.5 __pthread_rwlock_trywrlock F
GLIBC_2.2.5 flockfile F
@@ -33,7 +32,6 @@ GLIBC_2.2.5 pthread_detach F
GLIBC_2.2.5 pthread_getconcurrency F
GLIBC_2.2.5 pthread_getcpuclockid F
GLIBC_2.2.5 pthread_join F
-GLIBC_2.2.5 pthread_rwlock_init 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
@@ -352,6 +352,7 @@ GLIBC_2.16 __pthread_mutexattr_init F
GLIBC_2.16 __pthread_mutexattr_settype F
GLIBC_2.16 __pthread_once 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_unlock F
GLIBC_2.16 __pthread_rwlock_wrlock F
@@ -1509,6 +1510,7 @@ GLIBC_2.16 pthread_mutexattr_setrobust_np F
GLIBC_2.16 pthread_mutexattr_settype F
GLIBC_2.16 pthread_once 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_unlock F
GLIBC_2.16 pthread_rwlock_wrlock F
@@ -2300,6 +2302,7 @@ GLIBC_2.34 pthread_once F
GLIBC_2.34 pthread_rwlock_clockrdlock F
GLIBC_2.34 pthread_rwlock_clockwrlock F
GLIBC_2.34 pthread_rwlock_destroy F
+GLIBC_2.34 pthread_rwlock_init F
GLIBC_2.34 pthread_rwlock_rdlock F
GLIBC_2.34 pthread_rwlock_unlock F
GLIBC_2.34 pthread_rwlock_wrlock F
@@ -4,7 +4,6 @@ GLIBC_2.16 _IO_funlockfile F
GLIBC_2.16 __errno_location F
GLIBC_2.16 __pthread_register_cancel F
GLIBC_2.16 __pthread_register_cancel_defer F
-GLIBC_2.16 __pthread_rwlock_init F
GLIBC_2.16 __pthread_rwlock_tryrdlock F
GLIBC_2.16 __pthread_rwlock_trywrlock F
GLIBC_2.16 __pthread_unregister_cancel F
@@ -35,7 +34,6 @@ GLIBC_2.16 pthread_getconcurrency F
GLIBC_2.16 pthread_getcpuclockid F
GLIBC_2.16 pthread_getname_np F
GLIBC_2.16 pthread_join F
-GLIBC_2.16 pthread_rwlock_init F
GLIBC_2.16 pthread_rwlock_timedrdlock F
GLIBC_2.16 pthread_rwlock_timedwrlock F
GLIBC_2.16 pthread_rwlock_tryrdlock F