[03/19] nptl: Move cnd_broadcast into libc

Message ID 11afcb8437fc6cf342c123854c0210c2754794ba.1619456219.git.fweimer@redhat.com
State Committed
Commit 0431f171daefc436b8d185d852e45800745d7496
Headers
Series nptl: Move most C11 symbols into libc |

Commit Message

Florian Weimer April 26, 2021, 5 p.m. UTC
  The symbol was moved using scripts/move-symbol-to-libc.py.

The __pthread_cond_broadcast@@GLIBC_PRIVATE symbol is no longer
neded, so remove that as well.
---
 nptl/Versions                                         |  4 ++--
 nptl/pthread_cond_broadcast.c                         |  5 +++--
 sysdeps/pthread/Makefile                              |  2 +-
 sysdeps/pthread/cnd_broadcast.c                       | 11 ++++++++++-
 sysdeps/unix/sysv/linux/aarch64/libc.abilist          |  2 ++
 sysdeps/unix/sysv/linux/aarch64/libpthread.abilist    |  1 -
 sysdeps/unix/sysv/linux/alpha/libc.abilist            |  2 ++
 sysdeps/unix/sysv/linux/alpha/libpthread.abilist      |  1 -
 sysdeps/unix/sysv/linux/arc/libc.abilist              |  2 ++
 sysdeps/unix/sysv/linux/arc/libpthread.abilist        |  1 -
 sysdeps/unix/sysv/linux/arm/be/libc.abilist           |  2 ++
 sysdeps/unix/sysv/linux/arm/be/libpthread.abilist     |  1 -
 sysdeps/unix/sysv/linux/arm/le/libc.abilist           |  2 ++
 sysdeps/unix/sysv/linux/arm/le/libpthread.abilist     |  1 -
 sysdeps/unix/sysv/linux/csky/libc.abilist             |  2 ++
 sysdeps/unix/sysv/linux/csky/libpthread.abilist       |  1 -
 sysdeps/unix/sysv/linux/hppa/libc.abilist             |  2 ++
 sysdeps/unix/sysv/linux/hppa/libpthread.abilist       |  1 -
 sysdeps/unix/sysv/linux/i386/libc.abilist             |  2 ++
 sysdeps/unix/sysv/linux/i386/libpthread.abilist       |  1 -
 sysdeps/unix/sysv/linux/ia64/libc.abilist             |  2 ++
 sysdeps/unix/sysv/linux/ia64/libpthread.abilist       |  1 -
 sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist    |  2 ++
 .../unix/sysv/linux/m68k/coldfire/libpthread.abilist  |  1 -
 sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist      |  2 ++
 .../unix/sysv/linux/m68k/m680x0/libpthread.abilist    |  1 -
 sysdeps/unix/sysv/linux/microblaze/be/libc.abilist    |  2 ++
 .../unix/sysv/linux/microblaze/be/libpthread.abilist  |  1 -
 sysdeps/unix/sysv/linux/microblaze/le/libc.abilist    |  2 ++
 .../unix/sysv/linux/microblaze/le/libpthread.abilist  |  1 -
 sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist  |  2 ++
 .../unix/sysv/linux/mips/mips32/libpthread.abilist    |  1 -
 .../unix/sysv/linux/mips/mips32/nofpu/libc.abilist    |  2 ++
 .../unix/sysv/linux/mips/mips64/libpthread.abilist    |  1 -
 sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist  |  2 ++
 sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist  |  2 ++
 sysdeps/unix/sysv/linux/nios2/libc.abilist            |  2 ++
 sysdeps/unix/sysv/linux/nios2/libpthread.abilist      |  1 -
 .../sysv/linux/powerpc/powerpc32/fpu/libc.abilist     |  2 ++
 .../sysv/linux/powerpc/powerpc32/libpthread.abilist   |  1 -
 .../sysv/linux/powerpc/powerpc32/nofpu/libc.abilist   |  2 ++
 .../unix/sysv/linux/powerpc/powerpc64/be/libc.abilist |  2 ++
 .../linux/powerpc/powerpc64/be/libpthread.abilist     |  1 -
 .../unix/sysv/linux/powerpc/powerpc64/le/libc.abilist |  2 ++
 .../linux/powerpc/powerpc64/le/libpthread.abilist     |  1 -
 sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist       |  2 ++
 sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist |  1 -
 sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist       |  2 ++
 sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist |  1 -
 sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist     |  2 ++
 .../unix/sysv/linux/s390/s390-32/libpthread.abilist   |  1 -
 sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist     |  2 ++
 .../unix/sysv/linux/s390/s390-64/libpthread.abilist   |  1 -
 sysdeps/unix/sysv/linux/sh/be/libc.abilist            |  2 ++
 sysdeps/unix/sysv/linux/sh/be/libpthread.abilist      |  1 -
 sysdeps/unix/sysv/linux/sh/le/libc.abilist            |  2 ++
 sysdeps/unix/sysv/linux/sh/le/libpthread.abilist      |  1 -
 sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist    |  2 ++
 .../unix/sysv/linux/sparc/sparc32/libpthread.abilist  |  1 -
 sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist    |  2 ++
 .../unix/sysv/linux/sparc/sparc64/libpthread.abilist  |  1 -
 sysdeps/unix/sysv/linux/x86_64/64/libc.abilist        |  2 ++
 sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist  |  1 -
 sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist       |  2 ++
 sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist |  1 -
 65 files changed, 80 insertions(+), 35 deletions(-)
  

Comments

Carlos O'Donell May 2, 2021, 8:48 p.m. UTC | #1
On 4/26/21 1:00 PM, Florian Weimer via Libc-alpha wrote:
> The symbol was moved using scripts/move-symbol-to-libc.py.

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>
 
> The __pthread_cond_broadcast@@GLIBC_PRIVATE symbol is no longer
> neded, so remove that as well.

OK.

> ---
>  nptl/Versions                                         |  4 ++--
>  nptl/pthread_cond_broadcast.c                         |  5 +++--
>  sysdeps/pthread/Makefile                              |  2 +-
>  sysdeps/pthread/cnd_broadcast.c                       | 11 ++++++++++-
>  sysdeps/unix/sysv/linux/aarch64/libc.abilist          |  2 ++
>  sysdeps/unix/sysv/linux/aarch64/libpthread.abilist    |  1 -
>  sysdeps/unix/sysv/linux/alpha/libc.abilist            |  2 ++
>  sysdeps/unix/sysv/linux/alpha/libpthread.abilist      |  1 -
>  sysdeps/unix/sysv/linux/arc/libc.abilist              |  2 ++
>  sysdeps/unix/sysv/linux/arc/libpthread.abilist        |  1 -
>  sysdeps/unix/sysv/linux/arm/be/libc.abilist           |  2 ++
>  sysdeps/unix/sysv/linux/arm/be/libpthread.abilist     |  1 -
>  sysdeps/unix/sysv/linux/arm/le/libc.abilist           |  2 ++
>  sysdeps/unix/sysv/linux/arm/le/libpthread.abilist     |  1 -
>  sysdeps/unix/sysv/linux/csky/libc.abilist             |  2 ++
>  sysdeps/unix/sysv/linux/csky/libpthread.abilist       |  1 -
>  sysdeps/unix/sysv/linux/hppa/libc.abilist             |  2 ++
>  sysdeps/unix/sysv/linux/hppa/libpthread.abilist       |  1 -
>  sysdeps/unix/sysv/linux/i386/libc.abilist             |  2 ++
>  sysdeps/unix/sysv/linux/i386/libpthread.abilist       |  1 -
>  sysdeps/unix/sysv/linux/ia64/libc.abilist             |  2 ++
>  sysdeps/unix/sysv/linux/ia64/libpthread.abilist       |  1 -
>  sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist    |  2 ++
>  .../unix/sysv/linux/m68k/coldfire/libpthread.abilist  |  1 -
>  sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist      |  2 ++
>  .../unix/sysv/linux/m68k/m680x0/libpthread.abilist    |  1 -
>  sysdeps/unix/sysv/linux/microblaze/be/libc.abilist    |  2 ++
>  .../unix/sysv/linux/microblaze/be/libpthread.abilist  |  1 -
>  sysdeps/unix/sysv/linux/microblaze/le/libc.abilist    |  2 ++
>  .../unix/sysv/linux/microblaze/le/libpthread.abilist  |  1 -
>  sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist  |  2 ++
>  .../unix/sysv/linux/mips/mips32/libpthread.abilist    |  1 -
>  .../unix/sysv/linux/mips/mips32/nofpu/libc.abilist    |  2 ++
>  .../unix/sysv/linux/mips/mips64/libpthread.abilist    |  1 -
>  sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist  |  2 ++
>  sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist  |  2 ++
>  sysdeps/unix/sysv/linux/nios2/libc.abilist            |  2 ++
>  sysdeps/unix/sysv/linux/nios2/libpthread.abilist      |  1 -
>  .../sysv/linux/powerpc/powerpc32/fpu/libc.abilist     |  2 ++
>  .../sysv/linux/powerpc/powerpc32/libpthread.abilist   |  1 -
>  .../sysv/linux/powerpc/powerpc32/nofpu/libc.abilist   |  2 ++
>  .../unix/sysv/linux/powerpc/powerpc64/be/libc.abilist |  2 ++
>  .../linux/powerpc/powerpc64/be/libpthread.abilist     |  1 -
>  .../unix/sysv/linux/powerpc/powerpc64/le/libc.abilist |  2 ++
>  .../linux/powerpc/powerpc64/le/libpthread.abilist     |  1 -
>  sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist       |  2 ++
>  sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist |  1 -
>  sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist       |  2 ++
>  sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist |  1 -
>  sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist     |  2 ++
>  .../unix/sysv/linux/s390/s390-32/libpthread.abilist   |  1 -
>  sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist     |  2 ++
>  .../unix/sysv/linux/s390/s390-64/libpthread.abilist   |  1 -
>  sysdeps/unix/sysv/linux/sh/be/libc.abilist            |  2 ++
>  sysdeps/unix/sysv/linux/sh/be/libpthread.abilist      |  1 -
>  sysdeps/unix/sysv/linux/sh/le/libc.abilist            |  2 ++
>  sysdeps/unix/sysv/linux/sh/le/libpthread.abilist      |  1 -
>  sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist    |  2 ++
>  .../unix/sysv/linux/sparc/sparc32/libpthread.abilist  |  1 -
>  sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist    |  2 ++
>  .../unix/sysv/linux/sparc/sparc64/libpthread.abilist  |  1 -
>  sysdeps/unix/sysv/linux/x86_64/64/libc.abilist        |  2 ++
>  sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist  |  1 -
>  sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist       |  2 ++
>  sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist |  1 -
>  65 files changed, 80 insertions(+), 35 deletions(-)
> 
> diff --git a/nptl/Versions b/nptl/Versions
> index 1217a15bdf..fc34e59b70 100644
> --- a/nptl/Versions
> +++ b/nptl/Versions
> @@ -127,6 +127,7 @@ libc {
>    # C11 thread symbols.
>    GLIBC_2.28 {
>      call_once;
> +    cnd_broadcast;
>      thrd_current;
>      thrd_equal;
>      thrd_sleep;
> @@ -156,6 +157,7 @@ libc {
>      __pthread_mutexattr_settype;
>      __pthread_setspecific;
>      call_once;
> +    cnd_broadcast;
>      pthread_cond_clockwait;
>      pthread_condattr_getclock;
>      pthread_condattr_getpshared;
> @@ -218,7 +220,6 @@ libc {
>      __pthread_cleanup_pop;
>      __pthread_cleanup_push;
>      __pthread_cleanup_upto;
> -    __pthread_cond_broadcast; # Used by the C11 threads.
>      __pthread_cond_destroy; # Used by the C11 threads.
>      __pthread_cond_init; # Used by the C11 threads.
>      __pthread_cond_signal; # Used by the C11 threads.
> @@ -374,7 +375,6 @@ libpthread {
>  
>    # C11 thread symbols.
>    GLIBC_2.28 {
> -    cnd_broadcast;
>      cnd_destroy;
>      cnd_init;
>      cnd_signal;
> diff --git a/nptl/pthread_cond_broadcast.c b/nptl/pthread_cond_broadcast.c
> index 4af99544d2..f1275b2f15 100644
> --- a/nptl/pthread_cond_broadcast.c
> +++ b/nptl/pthread_cond_broadcast.c
> @@ -90,5 +90,6 @@ ___pthread_cond_broadcast (pthread_cond_t *cond)
>  versioned_symbol (libc, ___pthread_cond_broadcast,
>  		  pthread_cond_broadcast, GLIBC_2_3_2);
>  libc_hidden_ver (___pthread_cond_broadcast, __pthread_cond_broadcast)
> -versioned_symbol (libc, ___pthread_cond_broadcast,
> -		  __pthread_cond_broadcast, GLIBC_PRIVATE);
> +#ifndef SHARED
> +strong_alias (___pthread_cond_broadcast, __pthread_cond_broadcast)
> +#endif
> diff --git a/sysdeps/pthread/Makefile b/sysdeps/pthread/Makefile
> index adb4815b4e..821f4c920f 100644
> --- a/sysdeps/pthread/Makefile
> +++ b/sysdeps/pthread/Makefile
> @@ -34,12 +34,12 @@ routines += thrd_current thrd_equal thrd_sleep thrd_yield
>  libpthread-routines += thrd_create thrd_detach thrd_exit thrd_join \
>  		       mtx_destroy mtx_init mtx_lock mtx_timedlock \
>  		       mtx_trylock mtx_unlock \
> -		       cnd_broadcast \
>  		       cnd_destroy cnd_init cnd_signal cnd_timedwait cnd_wait \
>  		       tss_create tss_delete tss_get tss_set
>  
>  $(libpthread-routines-var) += \
>    call_once \
> +  cnd_broadcast \
>  
>  tests += tst-cnd-basic tst-mtx-trylock tst-cnd-broadcast \
>  	 tst-cnd-timedwait tst-thrd-detach tst-mtx-basic tst-thrd-sleep \
> diff --git a/sysdeps/pthread/cnd_broadcast.c b/sysdeps/pthread/cnd_broadcast.c
> index 75e931ebba..7aa1f620e4 100644
> --- a/sysdeps/pthread/cnd_broadcast.c
> +++ b/sysdeps/pthread/cnd_broadcast.c
> @@ -17,10 +17,19 @@
>     <https://www.gnu.org/licenses/>.  */
>  
>  #include "thrd_priv.h"
> +#include <shlib-compat.h>
>  
>  int
> -cnd_broadcast (cnd_t *cond)
> +__cnd_broadcast (cnd_t *cond)
>  {
>    int err_code = __pthread_cond_broadcast ((pthread_cond_t*) cond);
>    return thrd_err_map (err_code);
>  }
> +#if PTHREAD_IN_LIBC
> +versioned_symbol (libc, __cnd_broadcast, cnd_broadcast, GLIBC_2_34);
> +# if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_28, GLIBC_2_34)
> +compat_symbol (libpthread, __cnd_broadcast, cnd_broadcast, GLIBC_2_28);
> +# endif
> +#else /* !PTHREAD_IN_LIBC */
> +strong_alias (__cnd_broadcast, cnd_broadcast)
> +#endif
> diff --git a/sysdeps/unix/sysv/linux/aarch64/libc.abilist b/sysdeps/unix/sysv/linux/aarch64/libc.abilist
> index c11ab22ceb..010c6306a9 100644
> --- a/sysdeps/unix/sysv/linux/aarch64/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/aarch64/libc.abilist
> @@ -2199,6 +2199,7 @@ GLIBC_2.27 wcstof64_l F
>  GLIBC_2.27 wcstof64x F
>  GLIBC_2.27 wcstof64x_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
>  GLIBC_2.28 statx F
> @@ -2251,6 +2252,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist
> index d0f5f7b12c..7ebe4b990c 100644
> --- a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist
> @@ -69,7 +69,6 @@ GLIBC_2.17 sem_unlink F
>  GLIBC_2.17 sem_wait F
>  GLIBC_2.18 pthread_getattr_default_np F
>  GLIBC_2.18 pthread_setattr_default_np F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/alpha/libc.abilist b/sysdeps/unix/sysv/linux/alpha/libc.abilist
> index 6c97010471..97594a27ba 100644
> --- a/sysdeps/unix/sysv/linux/alpha/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/alpha/libc.abilist
> @@ -2092,6 +2092,7 @@ GLIBC_2.27 wcstof64_l F
>  GLIBC_2.27 wcstof64x F
>  GLIBC_2.27 wcstof64x_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
>  GLIBC_2.28 statx F
> @@ -2332,6 +2333,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist
> index 2cec6a77a8..d9d6e39f3e 100644
> --- a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist
> @@ -69,7 +69,6 @@ GLIBC_2.2 pthread_yield F
>  GLIBC_2.2 sem_timedwait F
>  GLIBC_2.2.3 __libpthread_version_placeholder F
>  GLIBC_2.2.6 __libpthread_version_placeholder F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/arc/libc.abilist b/sysdeps/unix/sysv/linux/arc/libc.abilist
> index 1aff75ab15..8a1d89dde2 100644
> --- a/sysdeps/unix/sysv/linux/arc/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/arc/libc.abilist
> @@ -626,6 +626,7 @@ GLIBC_2.32 clone F
>  GLIBC_2.32 close F
>  GLIBC_2.32 closedir F
>  GLIBC_2.32 closelog F
> +GLIBC_2.32 cnd_broadcast F
>  GLIBC_2.32 confstr F
>  GLIBC_2.32 connect F
>  GLIBC_2.32 copy_file_range F
> @@ -2010,6 +2011,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/arc/libpthread.abilist b/sysdeps/unix/sysv/linux/arc/libpthread.abilist
> index 9ed70b37a4..264fbaad4a 100644
> --- a/sysdeps/unix/sysv/linux/arc/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/arc/libpthread.abilist
> @@ -10,7 +10,6 @@ GLIBC_2.32 __pthread_rwlock_tryrdlock F
>  GLIBC_2.32 __pthread_rwlock_trywrlock F
>  GLIBC_2.32 __pthread_unregister_cancel F
>  GLIBC_2.32 __pthread_unregister_cancel_restore F
> -GLIBC_2.32 cnd_broadcast F
>  GLIBC_2.32 cnd_destroy F
>  GLIBC_2.32 cnd_init F
>  GLIBC_2.32 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/arm/be/libc.abilist b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
> index 377aa665ff..8903c23f98 100644
> --- a/sysdeps/unix/sysv/linux/arm/be/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
> @@ -119,6 +119,7 @@ GLIBC_2.27 wcstof32x_l F
>  GLIBC_2.27 wcstof64 F
>  GLIBC_2.27 wcstof64_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
> @@ -175,6 +176,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist
> index 2b02b6fb64..eb81e3d96b 100644
> --- a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist
> @@ -3,7 +3,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.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/arm/le/libc.abilist b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
> index 21646b12ee..f51e280491 100644
> --- a/sysdeps/unix/sysv/linux/arm/le/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
> @@ -119,6 +119,7 @@ GLIBC_2.27 wcstof32x_l F
>  GLIBC_2.27 wcstof64 F
>  GLIBC_2.27 wcstof64_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
> @@ -172,6 +173,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist
> index 2b02b6fb64..eb81e3d96b 100644
> --- a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist
> @@ -3,7 +3,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.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/csky/libc.abilist b/sysdeps/unix/sysv/linux/csky/libc.abilist
> index c08128bd75..d917316ca3 100644
> --- a/sysdeps/unix/sysv/linux/csky/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/csky/libc.abilist
> @@ -661,6 +661,7 @@ GLIBC_2.29 clone F
>  GLIBC_2.29 close F
>  GLIBC_2.29 closedir F
>  GLIBC_2.29 closelog F
> +GLIBC_2.29 cnd_broadcast F
>  GLIBC_2.29 confstr F
>  GLIBC_2.29 connect F
>  GLIBC_2.29 copy_file_range F
> @@ -2194,6 +2195,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/csky/libpthread.abilist b/sysdeps/unix/sysv/linux/csky/libpthread.abilist
> index 0998962205..431fb2d034 100644
> --- a/sysdeps/unix/sysv/linux/csky/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/csky/libpthread.abilist
> @@ -10,7 +10,6 @@ GLIBC_2.29 __pthread_rwlock_tryrdlock F
>  GLIBC_2.29 __pthread_rwlock_trywrlock F
>  GLIBC_2.29 __pthread_unregister_cancel F
>  GLIBC_2.29 __pthread_unregister_cancel_restore F
> -GLIBC_2.29 cnd_broadcast F
>  GLIBC_2.29 cnd_destroy F
>  GLIBC_2.29 cnd_init F
>  GLIBC_2.29 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/hppa/libc.abilist b/sysdeps/unix/sysv/linux/hppa/libc.abilist
> index cbab81fe94..9dc38d515d 100644
> --- a/sysdeps/unix/sysv/linux/hppa/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/hppa/libc.abilist
> @@ -1930,6 +1930,7 @@ GLIBC_2.27 wcstof32x_l F
>  GLIBC_2.27 wcstof64 F
>  GLIBC_2.27 wcstof64_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
> @@ -2145,6 +2146,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist
> index 346e899b10..5f4c6e4fb4 100644
> --- a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist
> @@ -61,7 +61,6 @@ GLIBC_2.2 sem_unlink F
>  GLIBC_2.2 sem_wait F
>  GLIBC_2.2.3 __libpthread_version_placeholder F
>  GLIBC_2.2.6 __libpthread_version_placeholder F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/i386/libc.abilist b/sysdeps/unix/sysv/linux/i386/libc.abilist
> index 1822a0b3ee..3209278a47 100644
> --- a/sysdeps/unix/sysv/linux/i386/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/i386/libc.abilist
> @@ -2104,6 +2104,7 @@ GLIBC_2.27 wcstof64_l F
>  GLIBC_2.27 wcstof64x F
>  GLIBC_2.27 wcstof64x_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
> @@ -2322,6 +2323,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/i386/libpthread.abilist b/sysdeps/unix/sysv/linux/i386/libpthread.abilist
> index 71c3594c82..02fe491881 100644
> --- a/sysdeps/unix/sysv/linux/i386/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/i386/libpthread.abilist
> @@ -69,7 +69,6 @@ GLIBC_2.2 pthread_yield F
>  GLIBC_2.2 sem_timedwait F
>  GLIBC_2.2.3 __libpthread_version_placeholder F
>  GLIBC_2.2.6 __libpthread_version_placeholder F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/ia64/libc.abilist b/sysdeps/unix/sysv/linux/ia64/libc.abilist
> index 9051490cfd..f90d5c3655 100644
> --- a/sysdeps/unix/sysv/linux/ia64/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/ia64/libc.abilist
> @@ -1966,6 +1966,7 @@ GLIBC_2.27 wcstof64_l F
>  GLIBC_2.27 wcstof64x F
>  GLIBC_2.27 wcstof64x_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
>  GLIBC_2.28 statx F
> @@ -2179,6 +2180,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist
> index b17cd8c595..5f1490bb30 100644
> --- a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist
> @@ -61,7 +61,6 @@ GLIBC_2.2 sem_unlink F
>  GLIBC_2.2 sem_wait F
>  GLIBC_2.2.3 __libpthread_version_placeholder F
>  GLIBC_2.2.6 __libpthread_version_placeholder F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
> index 7dcc4e003b..17456911b3 100644
> --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
> @@ -120,6 +120,7 @@ GLIBC_2.27 wcstof32x_l F
>  GLIBC_2.27 wcstof64 F
>  GLIBC_2.27 wcstof64_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
> @@ -176,6 +177,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
> index 2b02b6fb64..eb81e3d96b 100644
> --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
> @@ -3,7 +3,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.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
> index 70e7eb3a39..f4ccf202bf 100644
> --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
> @@ -2047,6 +2047,7 @@ GLIBC_2.27 wcstof32x_l F
>  GLIBC_2.27 wcstof64 F
>  GLIBC_2.27 wcstof64_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
> @@ -2265,6 +2266,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
> index 71c3594c82..02fe491881 100644
> --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
> @@ -69,7 +69,6 @@ GLIBC_2.2 pthread_yield F
>  GLIBC_2.2 sem_timedwait F
>  GLIBC_2.2.3 __libpthread_version_placeholder F
>  GLIBC_2.2.6 __libpthread_version_placeholder F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
> index b38af61755..65f5876df4 100644
> --- a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
> @@ -2189,6 +2189,7 @@ GLIBC_2.27 wcstof32x_l F
>  GLIBC_2.27 wcstof64 F
>  GLIBC_2.27 wcstof64_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
> @@ -2245,6 +2246,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist
> index 703e84aed6..eb826125b7 100644
> --- a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist
> @@ -69,7 +69,6 @@ GLIBC_2.18 sem_timedwait F
>  GLIBC_2.18 sem_trywait F
>  GLIBC_2.18 sem_unlink F
>  GLIBC_2.18 sem_wait F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
> index 18f9304314..fa89345217 100644
> --- a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
> @@ -2189,6 +2189,7 @@ GLIBC_2.27 wcstof32x_l F
>  GLIBC_2.27 wcstof64 F
>  GLIBC_2.27 wcstof64_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
> @@ -2242,6 +2243,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist
> index 703e84aed6..eb826125b7 100644
> --- a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist
> @@ -69,7 +69,6 @@ GLIBC_2.18 sem_timedwait F
>  GLIBC_2.18 sem_trywait F
>  GLIBC_2.18 sem_unlink F
>  GLIBC_2.18 sem_wait F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
> index 5ab33e126e..c2ed5070b8 100644
> --- a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
> @@ -2017,6 +2017,7 @@ GLIBC_2.27 wcstof32x_l F
>  GLIBC_2.27 wcstof64 F
>  GLIBC_2.27 wcstof64_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
> @@ -2228,6 +2229,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
> index 40fec2b84b..2a4c32e892 100644
> --- a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
> @@ -68,7 +68,6 @@ GLIBC_2.2 sem_unlink F
>  GLIBC_2.2 sem_wait F
>  GLIBC_2.2.3 __libpthread_version_placeholder F
>  GLIBC_2.2.6 __libpthread_version_placeholder F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
> index ea0e8c39ff..e2b257284c 100644
> --- a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
> @@ -2015,6 +2015,7 @@ GLIBC_2.27 wcstof32x_l F
>  GLIBC_2.27 wcstof64 F
>  GLIBC_2.27 wcstof64_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
> @@ -2226,6 +2227,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
> index 40fec2b84b..2a4c32e892 100644
> --- a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
> @@ -68,7 +68,6 @@ GLIBC_2.2 sem_unlink F
>  GLIBC_2.2 sem_wait F
>  GLIBC_2.2.3 __libpthread_version_placeholder F
>  GLIBC_2.2.6 __libpthread_version_placeholder F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
> index 12fe5e461d..57effe3164 100644
> --- a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
> @@ -2023,6 +2023,7 @@ GLIBC_2.27 wcstof64_l F
>  GLIBC_2.27 wcstof64x F
>  GLIBC_2.27 wcstof64x_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
> @@ -2234,6 +2235,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
> index 82581170e7..d7c86117f7 100644
> --- a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
> @@ -2019,6 +2019,7 @@ GLIBC_2.27 wcstof64_l F
>  GLIBC_2.27 wcstof64x F
>  GLIBC_2.27 wcstof64x_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
>  GLIBC_2.28 statx F
> @@ -2228,6 +2229,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/nios2/libc.abilist b/sysdeps/unix/sysv/linux/nios2/libc.abilist
> index c04e838ee5..5522622b47 100644
> --- a/sysdeps/unix/sysv/linux/nios2/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/nios2/libc.abilist
> @@ -2231,6 +2231,7 @@ GLIBC_2.27 wcstof32x_l F
>  GLIBC_2.27 wcstof64 F
>  GLIBC_2.27 wcstof64_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
> @@ -2284,6 +2285,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist
> index dd4be0f10d..897ec5cf12 100644
> --- a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist
> @@ -69,7 +69,6 @@ GLIBC_2.21 sem_timedwait F
>  GLIBC_2.21 sem_trywait F
>  GLIBC_2.21 sem_unlink F
>  GLIBC_2.21 sem_wait F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
> index cf722e91a6..fd8f040bf0 100644
> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
> @@ -2051,6 +2051,7 @@ GLIBC_2.27 wcstof32x_l F
>  GLIBC_2.27 wcstof64 F
>  GLIBC_2.27 wcstof64_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
> @@ -2292,6 +2293,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
> index cd2c0659fa..26eb6f444e 100644
> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
> @@ -69,7 +69,6 @@ GLIBC_2.2 pthread_yield F
>  GLIBC_2.2 sem_timedwait F
>  GLIBC_2.2.3 __libpthread_version_placeholder F
>  GLIBC_2.2.6 __libpthread_version_placeholder F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
> index f78998edc0..920f870a40 100644
> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
> @@ -2055,6 +2055,7 @@ GLIBC_2.27 wcstof32x_l F
>  GLIBC_2.27 wcstof64 F
>  GLIBC_2.27 wcstof64_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
> @@ -2325,6 +2326,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
> index f8d1810f5e..50b9ca8f04 100644
> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
> @@ -120,6 +120,7 @@ GLIBC_2.27 wcstof32x_l F
>  GLIBC_2.27 wcstof64 F
>  GLIBC_2.27 wcstof64_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
>  GLIBC_2.28 statx F
> @@ -2146,6 +2147,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
> index bfc91a00c7..9bb7212a79 100644
> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
> @@ -3,7 +3,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.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
> index 127e39ed72..e769052263 100644
> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
> @@ -2289,6 +2289,7 @@ GLIBC_2.27 wcstof64_l F
>  GLIBC_2.27 wcstof64x F
>  GLIBC_2.27 wcstof64x_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
>  GLIBC_2.28 statx F
> @@ -2447,6 +2448,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
> index d0f5f7b12c..7ebe4b990c 100644
> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
> @@ -69,7 +69,6 @@ GLIBC_2.17 sem_unlink F
>  GLIBC_2.17 sem_wait F
>  GLIBC_2.18 pthread_getattr_default_np F
>  GLIBC_2.18 pthread_setattr_default_np F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
> index 94d6d127c4..3976da6199 100644
> --- a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
> @@ -619,6 +619,7 @@ GLIBC_2.33 clone F
>  GLIBC_2.33 close F
>  GLIBC_2.33 closedir F
>  GLIBC_2.33 closelog F
> +GLIBC_2.33 cnd_broadcast F
>  GLIBC_2.33 confstr F
>  GLIBC_2.33 connect F
>  GLIBC_2.33 copy_file_range F
> @@ -2012,6 +2013,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist
> index 03181a2732..d2542dc026 100644
> --- a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist
> @@ -10,7 +10,6 @@ GLIBC_2.33 __pthread_rwlock_tryrdlock F
>  GLIBC_2.33 __pthread_rwlock_trywrlock F
>  GLIBC_2.33 __pthread_unregister_cancel F
>  GLIBC_2.33 __pthread_unregister_cancel_restore F
> -GLIBC_2.33 cnd_broadcast F
>  GLIBC_2.33 cnd_destroy F
>  GLIBC_2.33 cnd_init F
>  GLIBC_2.33 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
> index 79d3516e81..b10e0ff980 100644
> --- a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
> @@ -2160,6 +2160,7 @@ GLIBC_2.27 xencrypt F
>  GLIBC_2.27 xprt_register F
>  GLIBC_2.27 xprt_unregister F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
>  GLIBC_2.28 statx F
> @@ -2212,6 +2213,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
> index 67ba542f1b..ab9d50d141 100644
> --- a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
> @@ -69,7 +69,6 @@ GLIBC_2.27 sem_timedwait F
>  GLIBC_2.27 sem_trywait F
>  GLIBC_2.27 sem_unlink F
>  GLIBC_2.27 sem_wait F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
> index cfcfa02375..7ea1691859 100644
> --- a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
> @@ -2060,6 +2060,7 @@ GLIBC_2.27 wcstof64_l F
>  GLIBC_2.27 wcstof64x F
>  GLIBC_2.27 wcstof64x_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
> @@ -2290,6 +2291,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
> index f509261ffa..9b247afe89 100644
> --- a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
> @@ -70,7 +70,6 @@ GLIBC_2.2 pthread_yield F
>  GLIBC_2.2 sem_timedwait F
>  GLIBC_2.2.3 __libpthread_version_placeholder F
>  GLIBC_2.2.6 __libpthread_version_placeholder F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
> index 97bf0ef929..8198098146 100644
> --- a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
> @@ -1958,6 +1958,7 @@ GLIBC_2.27 wcstof64_l F
>  GLIBC_2.27 wcstof64x F
>  GLIBC_2.27 wcstof64x_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
>  GLIBC_2.28 statx F
> @@ -2183,6 +2184,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
> index 37f1713bab..49af06d18b 100644
> --- a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
> @@ -62,7 +62,6 @@ GLIBC_2.2 sem_unlink F
>  GLIBC_2.2 sem_wait F
>  GLIBC_2.2.3 __libpthread_version_placeholder F
>  GLIBC_2.2.6 __libpthread_version_placeholder F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/sh/be/libc.abilist b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
> index 5f40a9c5ad..e6f7a5a6a9 100644
> --- a/sysdeps/unix/sysv/linux/sh/be/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
> @@ -1934,6 +1934,7 @@ GLIBC_2.27 wcstof32x_l F
>  GLIBC_2.27 wcstof64 F
>  GLIBC_2.27 wcstof64_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
> @@ -2152,6 +2153,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist
> index 346e899b10..5f4c6e4fb4 100644
> --- a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist
> @@ -61,7 +61,6 @@ GLIBC_2.2 sem_unlink F
>  GLIBC_2.2 sem_wait F
>  GLIBC_2.2.3 __libpthread_version_placeholder F
>  GLIBC_2.2.6 __libpthread_version_placeholder F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/sh/le/libc.abilist b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
> index bdb5596d6c..a1de20d37b 100644
> --- a/sysdeps/unix/sysv/linux/sh/le/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
> @@ -1934,6 +1934,7 @@ GLIBC_2.27 wcstof32x_l F
>  GLIBC_2.27 wcstof64 F
>  GLIBC_2.27 wcstof64_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
> @@ -2149,6 +2150,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist
> index 346e899b10..5f4c6e4fb4 100644
> --- a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist
> @@ -61,7 +61,6 @@ GLIBC_2.2 sem_unlink F
>  GLIBC_2.2 sem_wait F
>  GLIBC_2.2.3 __libpthread_version_placeholder F
>  GLIBC_2.2.6 __libpthread_version_placeholder F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
> index 2fd340b407..68fdfe10f3 100644
> --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
> @@ -2054,6 +2054,7 @@ GLIBC_2.27 wcstof64_l F
>  GLIBC_2.27 wcstof64x F
>  GLIBC_2.27 wcstof64x_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
> @@ -2281,6 +2282,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
> index 2cec6a77a8..d9d6e39f3e 100644
> --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
> @@ -69,7 +69,6 @@ GLIBC_2.2 pthread_yield F
>  GLIBC_2.2 sem_timedwait F
>  GLIBC_2.2.3 __libpthread_version_placeholder F
>  GLIBC_2.2.6 __libpthread_version_placeholder F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
> index 33ac1505f1..bea7f71479 100644
> --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
> @@ -1988,6 +1988,7 @@ GLIBC_2.27 wcstof64_l F
>  GLIBC_2.27 wcstof64x F
>  GLIBC_2.27 wcstof64x_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
>  GLIBC_2.28 statx F
> @@ -2200,6 +2201,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
> index b17cd8c595..5f1490bb30 100644
> --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
> @@ -61,7 +61,6 @@ GLIBC_2.2 sem_unlink F
>  GLIBC_2.2 sem_wait F
>  GLIBC_2.2.3 __libpthread_version_placeholder F
>  GLIBC_2.2.6 __libpthread_version_placeholder F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
> index 889106018f..5ce35614d7 100644
> --- a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
> @@ -1947,6 +1947,7 @@ GLIBC_2.27 wcstof64_l F
>  GLIBC_2.27 wcstof64x F
>  GLIBC_2.27 wcstof64x_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
>  GLIBC_2.28 statx F
> @@ -2161,6 +2162,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
> index fe4fd51c54..556655d6a3 100644
> --- a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
> @@ -60,7 +60,6 @@ GLIBC_2.2.5 sem_trywait F
>  GLIBC_2.2.5 sem_unlink F
>  GLIBC_2.2.5 sem_wait F
>  GLIBC_2.2.6 __libpthread_version_placeholder F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
> diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
> index 4f947766a7..a0f16ed9a8 100644
> --- a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
> @@ -2212,6 +2212,7 @@ GLIBC_2.27 wcstof64_l F
>  GLIBC_2.27 wcstof64x F
>  GLIBC_2.27 wcstof64x_l F
>  GLIBC_2.28 call_once F
> +GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 fcntl64 F
>  GLIBC_2.28 renameat2 F
>  GLIBC_2.28 statx F
> @@ -2266,6 +2267,7 @@ GLIBC_2.34 __pthread_mutexattr_settype F
>  GLIBC_2.34 __pthread_setspecific F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 call_once F
> +GLIBC_2.34 cnd_broadcast F
>  GLIBC_2.34 pthread_cond_clockwait F
>  GLIBC_2.34 pthread_condattr_getclock F
>  GLIBC_2.34 pthread_condattr_getpshared F
> diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
> index 804ccc4962..86e79e1a18 100644
> --- a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
> +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
> @@ -69,7 +69,6 @@ GLIBC_2.16 sem_unlink F
>  GLIBC_2.16 sem_wait F
>  GLIBC_2.18 pthread_getattr_default_np F
>  GLIBC_2.18 pthread_setattr_default_np F
> -GLIBC_2.28 cnd_broadcast F
>  GLIBC_2.28 cnd_destroy F
>  GLIBC_2.28 cnd_init F
>  GLIBC_2.28 cnd_signal F
>
  

Patch

diff --git a/nptl/Versions b/nptl/Versions
index 1217a15bdf..fc34e59b70 100644
--- a/nptl/Versions
+++ b/nptl/Versions
@@ -127,6 +127,7 @@  libc {
   # C11 thread symbols.
   GLIBC_2.28 {
     call_once;
+    cnd_broadcast;
     thrd_current;
     thrd_equal;
     thrd_sleep;
@@ -156,6 +157,7 @@  libc {
     __pthread_mutexattr_settype;
     __pthread_setspecific;
     call_once;
+    cnd_broadcast;
     pthread_cond_clockwait;
     pthread_condattr_getclock;
     pthread_condattr_getpshared;
@@ -218,7 +220,6 @@  libc {
     __pthread_cleanup_pop;
     __pthread_cleanup_push;
     __pthread_cleanup_upto;
-    __pthread_cond_broadcast; # Used by the C11 threads.
     __pthread_cond_destroy; # Used by the C11 threads.
     __pthread_cond_init; # Used by the C11 threads.
     __pthread_cond_signal; # Used by the C11 threads.
@@ -374,7 +375,6 @@  libpthread {
 
   # C11 thread symbols.
   GLIBC_2.28 {
-    cnd_broadcast;
     cnd_destroy;
     cnd_init;
     cnd_signal;
diff --git a/nptl/pthread_cond_broadcast.c b/nptl/pthread_cond_broadcast.c
index 4af99544d2..f1275b2f15 100644
--- a/nptl/pthread_cond_broadcast.c
+++ b/nptl/pthread_cond_broadcast.c
@@ -90,5 +90,6 @@  ___pthread_cond_broadcast (pthread_cond_t *cond)
 versioned_symbol (libc, ___pthread_cond_broadcast,
 		  pthread_cond_broadcast, GLIBC_2_3_2);
 libc_hidden_ver (___pthread_cond_broadcast, __pthread_cond_broadcast)
-versioned_symbol (libc, ___pthread_cond_broadcast,
-		  __pthread_cond_broadcast, GLIBC_PRIVATE);
+#ifndef SHARED
+strong_alias (___pthread_cond_broadcast, __pthread_cond_broadcast)
+#endif
diff --git a/sysdeps/pthread/Makefile b/sysdeps/pthread/Makefile
index adb4815b4e..821f4c920f 100644
--- a/sysdeps/pthread/Makefile
+++ b/sysdeps/pthread/Makefile
@@ -34,12 +34,12 @@  routines += thrd_current thrd_equal thrd_sleep thrd_yield
 libpthread-routines += thrd_create thrd_detach thrd_exit thrd_join \
 		       mtx_destroy mtx_init mtx_lock mtx_timedlock \
 		       mtx_trylock mtx_unlock \
-		       cnd_broadcast \
 		       cnd_destroy cnd_init cnd_signal cnd_timedwait cnd_wait \
 		       tss_create tss_delete tss_get tss_set
 
 $(libpthread-routines-var) += \
   call_once \
+  cnd_broadcast \
 
 tests += tst-cnd-basic tst-mtx-trylock tst-cnd-broadcast \
 	 tst-cnd-timedwait tst-thrd-detach tst-mtx-basic tst-thrd-sleep \
diff --git a/sysdeps/pthread/cnd_broadcast.c b/sysdeps/pthread/cnd_broadcast.c
index 75e931ebba..7aa1f620e4 100644
--- a/sysdeps/pthread/cnd_broadcast.c
+++ b/sysdeps/pthread/cnd_broadcast.c
@@ -17,10 +17,19 @@ 
    <https://www.gnu.org/licenses/>.  */
 
 #include "thrd_priv.h"
+#include <shlib-compat.h>
 
 int
-cnd_broadcast (cnd_t *cond)
+__cnd_broadcast (cnd_t *cond)
 {
   int err_code = __pthread_cond_broadcast ((pthread_cond_t*) cond);
   return thrd_err_map (err_code);
 }
+#if PTHREAD_IN_LIBC
+versioned_symbol (libc, __cnd_broadcast, cnd_broadcast, GLIBC_2_34);
+# if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_28, GLIBC_2_34)
+compat_symbol (libpthread, __cnd_broadcast, cnd_broadcast, GLIBC_2_28);
+# endif
+#else /* !PTHREAD_IN_LIBC */
+strong_alias (__cnd_broadcast, cnd_broadcast)
+#endif
diff --git a/sysdeps/unix/sysv/linux/aarch64/libc.abilist b/sysdeps/unix/sysv/linux/aarch64/libc.abilist
index c11ab22ceb..010c6306a9 100644
--- a/sysdeps/unix/sysv/linux/aarch64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/aarch64/libc.abilist
@@ -2199,6 +2199,7 @@  GLIBC_2.27 wcstof64_l F
 GLIBC_2.27 wcstof64x F
 GLIBC_2.27 wcstof64x_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
 GLIBC_2.28 statx F
@@ -2251,6 +2252,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist
index d0f5f7b12c..7ebe4b990c 100644
--- a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist
@@ -69,7 +69,6 @@  GLIBC_2.17 sem_unlink F
 GLIBC_2.17 sem_wait F
 GLIBC_2.18 pthread_getattr_default_np F
 GLIBC_2.18 pthread_setattr_default_np F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/alpha/libc.abilist b/sysdeps/unix/sysv/linux/alpha/libc.abilist
index 6c97010471..97594a27ba 100644
--- a/sysdeps/unix/sysv/linux/alpha/libc.abilist
+++ b/sysdeps/unix/sysv/linux/alpha/libc.abilist
@@ -2092,6 +2092,7 @@  GLIBC_2.27 wcstof64_l F
 GLIBC_2.27 wcstof64x F
 GLIBC_2.27 wcstof64x_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
 GLIBC_2.28 statx F
@@ -2332,6 +2333,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist
index 2cec6a77a8..d9d6e39f3e 100644
--- a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist
@@ -69,7 +69,6 @@  GLIBC_2.2 pthread_yield F
 GLIBC_2.2 sem_timedwait F
 GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/arc/libc.abilist b/sysdeps/unix/sysv/linux/arc/libc.abilist
index 1aff75ab15..8a1d89dde2 100644
--- a/sysdeps/unix/sysv/linux/arc/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arc/libc.abilist
@@ -626,6 +626,7 @@  GLIBC_2.32 clone F
 GLIBC_2.32 close F
 GLIBC_2.32 closedir F
 GLIBC_2.32 closelog F
+GLIBC_2.32 cnd_broadcast F
 GLIBC_2.32 confstr F
 GLIBC_2.32 connect F
 GLIBC_2.32 copy_file_range F
@@ -2010,6 +2011,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/arc/libpthread.abilist b/sysdeps/unix/sysv/linux/arc/libpthread.abilist
index 9ed70b37a4..264fbaad4a 100644
--- a/sysdeps/unix/sysv/linux/arc/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/arc/libpthread.abilist
@@ -10,7 +10,6 @@  GLIBC_2.32 __pthread_rwlock_tryrdlock F
 GLIBC_2.32 __pthread_rwlock_trywrlock F
 GLIBC_2.32 __pthread_unregister_cancel F
 GLIBC_2.32 __pthread_unregister_cancel_restore F
-GLIBC_2.32 cnd_broadcast F
 GLIBC_2.32 cnd_destroy F
 GLIBC_2.32 cnd_init F
 GLIBC_2.32 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/arm/be/libc.abilist b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
index 377aa665ff..8903c23f98 100644
--- a/sysdeps/unix/sysv/linux/arm/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
@@ -119,6 +119,7 @@  GLIBC_2.27 wcstof32x_l F
 GLIBC_2.27 wcstof64 F
 GLIBC_2.27 wcstof64_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
@@ -175,6 +176,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist
index 2b02b6fb64..eb81e3d96b 100644
--- a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist
@@ -3,7 +3,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.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/arm/le/libc.abilist b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
index 21646b12ee..f51e280491 100644
--- a/sysdeps/unix/sysv/linux/arm/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
@@ -119,6 +119,7 @@  GLIBC_2.27 wcstof32x_l F
 GLIBC_2.27 wcstof64 F
 GLIBC_2.27 wcstof64_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
@@ -172,6 +173,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist
index 2b02b6fb64..eb81e3d96b 100644
--- a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist
@@ -3,7 +3,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.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/csky/libc.abilist b/sysdeps/unix/sysv/linux/csky/libc.abilist
index c08128bd75..d917316ca3 100644
--- a/sysdeps/unix/sysv/linux/csky/libc.abilist
+++ b/sysdeps/unix/sysv/linux/csky/libc.abilist
@@ -661,6 +661,7 @@  GLIBC_2.29 clone F
 GLIBC_2.29 close F
 GLIBC_2.29 closedir F
 GLIBC_2.29 closelog F
+GLIBC_2.29 cnd_broadcast F
 GLIBC_2.29 confstr F
 GLIBC_2.29 connect F
 GLIBC_2.29 copy_file_range F
@@ -2194,6 +2195,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/csky/libpthread.abilist b/sysdeps/unix/sysv/linux/csky/libpthread.abilist
index 0998962205..431fb2d034 100644
--- a/sysdeps/unix/sysv/linux/csky/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/csky/libpthread.abilist
@@ -10,7 +10,6 @@  GLIBC_2.29 __pthread_rwlock_tryrdlock F
 GLIBC_2.29 __pthread_rwlock_trywrlock F
 GLIBC_2.29 __pthread_unregister_cancel F
 GLIBC_2.29 __pthread_unregister_cancel_restore F
-GLIBC_2.29 cnd_broadcast F
 GLIBC_2.29 cnd_destroy F
 GLIBC_2.29 cnd_init F
 GLIBC_2.29 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/hppa/libc.abilist b/sysdeps/unix/sysv/linux/hppa/libc.abilist
index cbab81fe94..9dc38d515d 100644
--- a/sysdeps/unix/sysv/linux/hppa/libc.abilist
+++ b/sysdeps/unix/sysv/linux/hppa/libc.abilist
@@ -1930,6 +1930,7 @@  GLIBC_2.27 wcstof32x_l F
 GLIBC_2.27 wcstof64 F
 GLIBC_2.27 wcstof64_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
@@ -2145,6 +2146,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist
index 346e899b10..5f4c6e4fb4 100644
--- a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist
@@ -61,7 +61,6 @@  GLIBC_2.2 sem_unlink F
 GLIBC_2.2 sem_wait F
 GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/i386/libc.abilist b/sysdeps/unix/sysv/linux/i386/libc.abilist
index 1822a0b3ee..3209278a47 100644
--- a/sysdeps/unix/sysv/linux/i386/libc.abilist
+++ b/sysdeps/unix/sysv/linux/i386/libc.abilist
@@ -2104,6 +2104,7 @@  GLIBC_2.27 wcstof64_l F
 GLIBC_2.27 wcstof64x F
 GLIBC_2.27 wcstof64x_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
@@ -2322,6 +2323,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/i386/libpthread.abilist b/sysdeps/unix/sysv/linux/i386/libpthread.abilist
index 71c3594c82..02fe491881 100644
--- a/sysdeps/unix/sysv/linux/i386/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/i386/libpthread.abilist
@@ -69,7 +69,6 @@  GLIBC_2.2 pthread_yield F
 GLIBC_2.2 sem_timedwait F
 GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/ia64/libc.abilist b/sysdeps/unix/sysv/linux/ia64/libc.abilist
index 9051490cfd..f90d5c3655 100644
--- a/sysdeps/unix/sysv/linux/ia64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/ia64/libc.abilist
@@ -1966,6 +1966,7 @@  GLIBC_2.27 wcstof64_l F
 GLIBC_2.27 wcstof64x F
 GLIBC_2.27 wcstof64x_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
 GLIBC_2.28 statx F
@@ -2179,6 +2180,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist
index b17cd8c595..5f1490bb30 100644
--- a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist
@@ -61,7 +61,6 @@  GLIBC_2.2 sem_unlink F
 GLIBC_2.2 sem_wait F
 GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
index 7dcc4e003b..17456911b3 100644
--- a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
@@ -120,6 +120,7 @@  GLIBC_2.27 wcstof32x_l F
 GLIBC_2.27 wcstof64 F
 GLIBC_2.27 wcstof64_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
@@ -176,6 +177,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
index 2b02b6fb64..eb81e3d96b 100644
--- a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
@@ -3,7 +3,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.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
index 70e7eb3a39..f4ccf202bf 100644
--- a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
@@ -2047,6 +2047,7 @@  GLIBC_2.27 wcstof32x_l F
 GLIBC_2.27 wcstof64 F
 GLIBC_2.27 wcstof64_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
@@ -2265,6 +2266,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
index 71c3594c82..02fe491881 100644
--- a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
@@ -69,7 +69,6 @@  GLIBC_2.2 pthread_yield F
 GLIBC_2.2 sem_timedwait F
 GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
index b38af61755..65f5876df4 100644
--- a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
@@ -2189,6 +2189,7 @@  GLIBC_2.27 wcstof32x_l F
 GLIBC_2.27 wcstof64 F
 GLIBC_2.27 wcstof64_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
@@ -2245,6 +2246,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist
index 703e84aed6..eb826125b7 100644
--- a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist
@@ -69,7 +69,6 @@  GLIBC_2.18 sem_timedwait F
 GLIBC_2.18 sem_trywait F
 GLIBC_2.18 sem_unlink F
 GLIBC_2.18 sem_wait F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
index 18f9304314..fa89345217 100644
--- a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
@@ -2189,6 +2189,7 @@  GLIBC_2.27 wcstof32x_l F
 GLIBC_2.27 wcstof64 F
 GLIBC_2.27 wcstof64_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
@@ -2242,6 +2243,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist
index 703e84aed6..eb826125b7 100644
--- a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist
@@ -69,7 +69,6 @@  GLIBC_2.18 sem_timedwait F
 GLIBC_2.18 sem_trywait F
 GLIBC_2.18 sem_unlink F
 GLIBC_2.18 sem_wait F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
index 5ab33e126e..c2ed5070b8 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
@@ -2017,6 +2017,7 @@  GLIBC_2.27 wcstof32x_l F
 GLIBC_2.27 wcstof64 F
 GLIBC_2.27 wcstof64_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
@@ -2228,6 +2229,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
index 40fec2b84b..2a4c32e892 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
@@ -68,7 +68,6 @@  GLIBC_2.2 sem_unlink F
 GLIBC_2.2 sem_wait F
 GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
index ea0e8c39ff..e2b257284c 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
@@ -2015,6 +2015,7 @@  GLIBC_2.27 wcstof32x_l F
 GLIBC_2.27 wcstof64 F
 GLIBC_2.27 wcstof64_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
@@ -2226,6 +2227,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
index 40fec2b84b..2a4c32e892 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
@@ -68,7 +68,6 @@  GLIBC_2.2 sem_unlink F
 GLIBC_2.2 sem_wait F
 GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
index 12fe5e461d..57effe3164 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
@@ -2023,6 +2023,7 @@  GLIBC_2.27 wcstof64_l F
 GLIBC_2.27 wcstof64x F
 GLIBC_2.27 wcstof64x_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
@@ -2234,6 +2235,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
index 82581170e7..d7c86117f7 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
@@ -2019,6 +2019,7 @@  GLIBC_2.27 wcstof64_l F
 GLIBC_2.27 wcstof64x F
 GLIBC_2.27 wcstof64x_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
 GLIBC_2.28 statx F
@@ -2228,6 +2229,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/nios2/libc.abilist b/sysdeps/unix/sysv/linux/nios2/libc.abilist
index c04e838ee5..5522622b47 100644
--- a/sysdeps/unix/sysv/linux/nios2/libc.abilist
+++ b/sysdeps/unix/sysv/linux/nios2/libc.abilist
@@ -2231,6 +2231,7 @@  GLIBC_2.27 wcstof32x_l F
 GLIBC_2.27 wcstof64 F
 GLIBC_2.27 wcstof64_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
@@ -2284,6 +2285,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist
index dd4be0f10d..897ec5cf12 100644
--- a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist
@@ -69,7 +69,6 @@  GLIBC_2.21 sem_timedwait F
 GLIBC_2.21 sem_trywait F
 GLIBC_2.21 sem_unlink F
 GLIBC_2.21 sem_wait F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
index cf722e91a6..fd8f040bf0 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
@@ -2051,6 +2051,7 @@  GLIBC_2.27 wcstof32x_l F
 GLIBC_2.27 wcstof64 F
 GLIBC_2.27 wcstof64_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
@@ -2292,6 +2293,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
index cd2c0659fa..26eb6f444e 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
@@ -69,7 +69,6 @@  GLIBC_2.2 pthread_yield F
 GLIBC_2.2 sem_timedwait F
 GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
index f78998edc0..920f870a40 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
@@ -2055,6 +2055,7 @@  GLIBC_2.27 wcstof32x_l F
 GLIBC_2.27 wcstof64 F
 GLIBC_2.27 wcstof64_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
@@ -2325,6 +2326,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
index f8d1810f5e..50b9ca8f04 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
@@ -120,6 +120,7 @@  GLIBC_2.27 wcstof32x_l F
 GLIBC_2.27 wcstof64 F
 GLIBC_2.27 wcstof64_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
 GLIBC_2.28 statx F
@@ -2146,6 +2147,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
index bfc91a00c7..9bb7212a79 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
@@ -3,7 +3,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.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
index 127e39ed72..e769052263 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
@@ -2289,6 +2289,7 @@  GLIBC_2.27 wcstof64_l F
 GLIBC_2.27 wcstof64x F
 GLIBC_2.27 wcstof64x_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
 GLIBC_2.28 statx F
@@ -2447,6 +2448,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
index d0f5f7b12c..7ebe4b990c 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
@@ -69,7 +69,6 @@  GLIBC_2.17 sem_unlink F
 GLIBC_2.17 sem_wait F
 GLIBC_2.18 pthread_getattr_default_np F
 GLIBC_2.18 pthread_setattr_default_np F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
index 94d6d127c4..3976da6199 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
@@ -619,6 +619,7 @@  GLIBC_2.33 clone F
 GLIBC_2.33 close F
 GLIBC_2.33 closedir F
 GLIBC_2.33 closelog F
+GLIBC_2.33 cnd_broadcast F
 GLIBC_2.33 confstr F
 GLIBC_2.33 connect F
 GLIBC_2.33 copy_file_range F
@@ -2012,6 +2013,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist
index 03181a2732..d2542dc026 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist
@@ -10,7 +10,6 @@  GLIBC_2.33 __pthread_rwlock_tryrdlock F
 GLIBC_2.33 __pthread_rwlock_trywrlock F
 GLIBC_2.33 __pthread_unregister_cancel F
 GLIBC_2.33 __pthread_unregister_cancel_restore F
-GLIBC_2.33 cnd_broadcast F
 GLIBC_2.33 cnd_destroy F
 GLIBC_2.33 cnd_init F
 GLIBC_2.33 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
index 79d3516e81..b10e0ff980 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
@@ -2160,6 +2160,7 @@  GLIBC_2.27 xencrypt F
 GLIBC_2.27 xprt_register F
 GLIBC_2.27 xprt_unregister F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
 GLIBC_2.28 statx F
@@ -2212,6 +2213,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
index 67ba542f1b..ab9d50d141 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
@@ -69,7 +69,6 @@  GLIBC_2.27 sem_timedwait F
 GLIBC_2.27 sem_trywait F
 GLIBC_2.27 sem_unlink F
 GLIBC_2.27 sem_wait F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
index cfcfa02375..7ea1691859 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
@@ -2060,6 +2060,7 @@  GLIBC_2.27 wcstof64_l F
 GLIBC_2.27 wcstof64x F
 GLIBC_2.27 wcstof64x_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
@@ -2290,6 +2291,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
index f509261ffa..9b247afe89 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
@@ -70,7 +70,6 @@  GLIBC_2.2 pthread_yield F
 GLIBC_2.2 sem_timedwait F
 GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
index 97bf0ef929..8198098146 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
@@ -1958,6 +1958,7 @@  GLIBC_2.27 wcstof64_l F
 GLIBC_2.27 wcstof64x F
 GLIBC_2.27 wcstof64x_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
 GLIBC_2.28 statx F
@@ -2183,6 +2184,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
index 37f1713bab..49af06d18b 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
@@ -62,7 +62,6 @@  GLIBC_2.2 sem_unlink F
 GLIBC_2.2 sem_wait F
 GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/sh/be/libc.abilist b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
index 5f40a9c5ad..e6f7a5a6a9 100644
--- a/sysdeps/unix/sysv/linux/sh/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
@@ -1934,6 +1934,7 @@  GLIBC_2.27 wcstof32x_l F
 GLIBC_2.27 wcstof64 F
 GLIBC_2.27 wcstof64_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
@@ -2152,6 +2153,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist
index 346e899b10..5f4c6e4fb4 100644
--- a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist
@@ -61,7 +61,6 @@  GLIBC_2.2 sem_unlink F
 GLIBC_2.2 sem_wait F
 GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/sh/le/libc.abilist b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
index bdb5596d6c..a1de20d37b 100644
--- a/sysdeps/unix/sysv/linux/sh/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
@@ -1934,6 +1934,7 @@  GLIBC_2.27 wcstof32x_l F
 GLIBC_2.27 wcstof64 F
 GLIBC_2.27 wcstof64_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
@@ -2149,6 +2150,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist
index 346e899b10..5f4c6e4fb4 100644
--- a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist
@@ -61,7 +61,6 @@  GLIBC_2.2 sem_unlink F
 GLIBC_2.2 sem_wait F
 GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
index 2fd340b407..68fdfe10f3 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
@@ -2054,6 +2054,7 @@  GLIBC_2.27 wcstof64_l F
 GLIBC_2.27 wcstof64x F
 GLIBC_2.27 wcstof64x_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
@@ -2281,6 +2282,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
index 2cec6a77a8..d9d6e39f3e 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
@@ -69,7 +69,6 @@  GLIBC_2.2 pthread_yield F
 GLIBC_2.2 sem_timedwait F
 GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
index 33ac1505f1..bea7f71479 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
@@ -1988,6 +1988,7 @@  GLIBC_2.27 wcstof64_l F
 GLIBC_2.27 wcstof64x F
 GLIBC_2.27 wcstof64x_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
 GLIBC_2.28 statx F
@@ -2200,6 +2201,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
index b17cd8c595..5f1490bb30 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
@@ -61,7 +61,6 @@  GLIBC_2.2 sem_unlink F
 GLIBC_2.2 sem_wait F
 GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
index 889106018f..5ce35614d7 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
@@ -1947,6 +1947,7 @@  GLIBC_2.27 wcstof64_l F
 GLIBC_2.27 wcstof64x F
 GLIBC_2.27 wcstof64x_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
 GLIBC_2.28 statx F
@@ -2161,6 +2162,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
index fe4fd51c54..556655d6a3 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
@@ -60,7 +60,6 @@  GLIBC_2.2.5 sem_trywait F
 GLIBC_2.2.5 sem_unlink F
 GLIBC_2.2.5 sem_wait F
 GLIBC_2.2.6 __libpthread_version_placeholder F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
index 4f947766a7..a0f16ed9a8 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
@@ -2212,6 +2212,7 @@  GLIBC_2.27 wcstof64_l F
 GLIBC_2.27 wcstof64x F
 GLIBC_2.27 wcstof64x_l F
 GLIBC_2.28 call_once F
+GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 fcntl64 F
 GLIBC_2.28 renameat2 F
 GLIBC_2.28 statx F
@@ -2266,6 +2267,7 @@  GLIBC_2.34 __pthread_mutexattr_settype F
 GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
+GLIBC_2.34 cnd_broadcast F
 GLIBC_2.34 pthread_cond_clockwait F
 GLIBC_2.34 pthread_condattr_getclock F
 GLIBC_2.34 pthread_condattr_getpshared F
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
index 804ccc4962..86e79e1a18 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
@@ -69,7 +69,6 @@  GLIBC_2.16 sem_unlink F
 GLIBC_2.16 sem_wait F
 GLIBC_2.18 pthread_getattr_default_np F
 GLIBC_2.18 pthread_setattr_default_np F
-GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
 GLIBC_2.28 cnd_init F
 GLIBC_2.28 cnd_signal F