[1/3] nptl: Move __pthread_register_cancel, __pthread_unregister_cancel to libc

Message ID 14d59ff79779cc36d9522afbf44787890d33f759.1620730538.git.fweimer@redhat.com
State New
Headers show
Series
  • nptl: Move remaining cancellation functionality into libc
Related show

Commit Message

Mark Brown via Libc-alpha May 11, 2021, 10:56 a.m.
The symbols were moved using scripts/move-symbol-to-libc.py.

Also clean up some unwinder linking leftover in the same spot
in nptl/pthreadP.h.
---
 nptl/Makefile                                 |  2 +-
 nptl/Versions                                 |  6 +++--
 nptl/cleanup.c                                | 24 +++++++++++++++----
 nptl/pthreadP.h                               | 13 ++--------
 sysdeps/unix/sysv/linux/aarch64/libc.abilist  |  4 ++++
 .../sysv/linux/aarch64/libpthread.abilist     |  2 --
 sysdeps/unix/sysv/linux/alpha/libc.abilist    |  4 ++++
 .../unix/sysv/linux/alpha/libpthread.abilist  |  2 --
 sysdeps/unix/sysv/linux/arc/libc.abilist      |  4 ++++
 .../unix/sysv/linux/arc/libpthread.abilist    |  2 --
 sysdeps/unix/sysv/linux/arm/be/libc.abilist   |  4 ++++
 .../unix/sysv/linux/arm/be/libpthread.abilist |  2 --
 sysdeps/unix/sysv/linux/arm/le/libc.abilist   |  4 ++++
 .../unix/sysv/linux/arm/le/libpthread.abilist |  2 --
 sysdeps/unix/sysv/linux/csky/libc.abilist     |  4 ++++
 .../unix/sysv/linux/csky/libpthread.abilist   |  2 --
 sysdeps/unix/sysv/linux/hppa/libc.abilist     |  4 ++++
 .../unix/sysv/linux/hppa/libpthread.abilist   |  2 --
 sysdeps/unix/sysv/linux/i386/libc.abilist     |  4 ++++
 .../unix/sysv/linux/i386/libpthread.abilist   |  2 --
 sysdeps/unix/sysv/linux/ia64/libc.abilist     |  4 ++++
 .../unix/sysv/linux/ia64/libpthread.abilist   |  2 --
 .../sysv/linux/m68k/coldfire/libc.abilist     |  4 ++++
 .../linux/m68k/coldfire/libpthread.abilist    |  2 --
 .../unix/sysv/linux/m68k/m680x0/libc.abilist  |  4 ++++
 .../sysv/linux/m68k/m680x0/libpthread.abilist |  2 --
 .../sysv/linux/microblaze/be/libc.abilist     |  4 ++++
 .../linux/microblaze/be/libpthread.abilist    |  2 --
 .../sysv/linux/microblaze/le/libc.abilist     |  4 ++++
 .../linux/microblaze/le/libpthread.abilist    |  2 --
 .../sysv/linux/mips/mips32/fpu/libc.abilist   |  4 ++++
 .../sysv/linux/mips/mips32/libpthread.abilist |  2 --
 .../sysv/linux/mips/mips32/nofpu/libc.abilist |  4 ++++
 .../sysv/linux/mips/mips64/libpthread.abilist |  2 --
 .../sysv/linux/mips/mips64/n32/libc.abilist   |  4 ++++
 .../sysv/linux/mips/mips64/n64/libc.abilist   |  4 ++++
 sysdeps/unix/sysv/linux/nios2/libc.abilist    |  4 ++++
 .../unix/sysv/linux/nios2/libpthread.abilist  |  2 --
 .../linux/powerpc/powerpc32/fpu/libc.abilist  |  4 ++++
 .../powerpc/powerpc32/libpthread.abilist      |  2 --
 .../powerpc/powerpc32/nofpu/libc.abilist      |  4 ++++
 .../linux/powerpc/powerpc64/be/libc.abilist   |  4 ++++
 .../powerpc/powerpc64/be/libpthread.abilist   |  2 --
 .../linux/powerpc/powerpc64/le/libc.abilist   |  4 ++++
 .../powerpc/powerpc64/le/libpthread.abilist   |  2 --
 .../unix/sysv/linux/riscv/rv32/libc.abilist   |  4 ++++
 .../sysv/linux/riscv/rv32/libpthread.abilist  |  2 --
 .../unix/sysv/linux/riscv/rv64/libc.abilist   |  4 ++++
 .../sysv/linux/riscv/rv64/libpthread.abilist  |  2 --
 .../unix/sysv/linux/s390/s390-32/libc.abilist |  4 ++++
 .../linux/s390/s390-32/libpthread.abilist     |  2 --
 .../unix/sysv/linux/s390/s390-64/libc.abilist |  4 ++++
 .../linux/s390/s390-64/libpthread.abilist     |  2 --
 sysdeps/unix/sysv/linux/sh/be/libc.abilist    |  4 ++++
 .../unix/sysv/linux/sh/be/libpthread.abilist  |  2 --
 sysdeps/unix/sysv/linux/sh/le/libc.abilist    |  4 ++++
 .../unix/sysv/linux/sh/le/libpthread.abilist  |  2 --
 .../sysv/linux/sparc/sparc32/libc.abilist     |  4 ++++
 .../linux/sparc/sparc32/libpthread.abilist    |  2 --
 .../sysv/linux/sparc/sparc64/libc.abilist     |  4 ++++
 .../linux/sparc/sparc64/libpthread.abilist    |  2 --
 .../unix/sysv/linux/x86_64/64/libc.abilist    |  4 ++++
 .../sysv/linux/x86_64/64/libpthread.abilist   |  2 --
 .../unix/sysv/linux/x86_64/x32/libc.abilist   |  4 ++++
 .../sysv/linux/x86_64/x32/libpthread.abilist  |  2 --
 65 files changed, 154 insertions(+), 77 deletions(-)

-- 
2.31.1

Comments

Mark Brown via Libc-alpha May 11, 2021, 5:27 p.m. | #1
On 11/05/2021 07:56, Florian Weimer via Libc-alpha wrote:
> The symbols were moved using scripts/move-symbol-to-libc.py.

> 

> Also clean up some unwinder linking leftover in the same spot

> in nptl/pthreadP.h.


LGTM, thanks.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>


> ---

>  nptl/Makefile                                 |  2 +-

>  nptl/Versions                                 |  6 +++--

>  nptl/cleanup.c                                | 24 +++++++++++++++----

>  nptl/pthreadP.h                               | 13 ++--------

>  sysdeps/unix/sysv/linux/aarch64/libc.abilist  |  4 ++++

>  .../sysv/linux/aarch64/libpthread.abilist     |  2 --

>  sysdeps/unix/sysv/linux/alpha/libc.abilist    |  4 ++++

>  .../unix/sysv/linux/alpha/libpthread.abilist  |  2 --

>  sysdeps/unix/sysv/linux/arc/libc.abilist      |  4 ++++

>  .../unix/sysv/linux/arc/libpthread.abilist    |  2 --

>  sysdeps/unix/sysv/linux/arm/be/libc.abilist   |  4 ++++

>  .../unix/sysv/linux/arm/be/libpthread.abilist |  2 --

>  sysdeps/unix/sysv/linux/arm/le/libc.abilist   |  4 ++++

>  .../unix/sysv/linux/arm/le/libpthread.abilist |  2 --

>  sysdeps/unix/sysv/linux/csky/libc.abilist     |  4 ++++

>  .../unix/sysv/linux/csky/libpthread.abilist   |  2 --

>  sysdeps/unix/sysv/linux/hppa/libc.abilist     |  4 ++++

>  .../unix/sysv/linux/hppa/libpthread.abilist   |  2 --

>  sysdeps/unix/sysv/linux/i386/libc.abilist     |  4 ++++

>  .../unix/sysv/linux/i386/libpthread.abilist   |  2 --

>  sysdeps/unix/sysv/linux/ia64/libc.abilist     |  4 ++++

>  .../unix/sysv/linux/ia64/libpthread.abilist   |  2 --

>  .../sysv/linux/m68k/coldfire/libc.abilist     |  4 ++++

>  .../linux/m68k/coldfire/libpthread.abilist    |  2 --

>  .../unix/sysv/linux/m68k/m680x0/libc.abilist  |  4 ++++

>  .../sysv/linux/m68k/m680x0/libpthread.abilist |  2 --

>  .../sysv/linux/microblaze/be/libc.abilist     |  4 ++++

>  .../linux/microblaze/be/libpthread.abilist    |  2 --

>  .../sysv/linux/microblaze/le/libc.abilist     |  4 ++++

>  .../linux/microblaze/le/libpthread.abilist    |  2 --

>  .../sysv/linux/mips/mips32/fpu/libc.abilist   |  4 ++++

>  .../sysv/linux/mips/mips32/libpthread.abilist |  2 --

>  .../sysv/linux/mips/mips32/nofpu/libc.abilist |  4 ++++

>  .../sysv/linux/mips/mips64/libpthread.abilist |  2 --

>  .../sysv/linux/mips/mips64/n32/libc.abilist   |  4 ++++

>  .../sysv/linux/mips/mips64/n64/libc.abilist   |  4 ++++

>  sysdeps/unix/sysv/linux/nios2/libc.abilist    |  4 ++++

>  .../unix/sysv/linux/nios2/libpthread.abilist  |  2 --

>  .../linux/powerpc/powerpc32/fpu/libc.abilist  |  4 ++++

>  .../powerpc/powerpc32/libpthread.abilist      |  2 --

>  .../powerpc/powerpc32/nofpu/libc.abilist      |  4 ++++

>  .../linux/powerpc/powerpc64/be/libc.abilist   |  4 ++++

>  .../powerpc/powerpc64/be/libpthread.abilist   |  2 --

>  .../linux/powerpc/powerpc64/le/libc.abilist   |  4 ++++

>  .../powerpc/powerpc64/le/libpthread.abilist   |  2 --

>  .../unix/sysv/linux/riscv/rv32/libc.abilist   |  4 ++++

>  .../sysv/linux/riscv/rv32/libpthread.abilist  |  2 --

>  .../unix/sysv/linux/riscv/rv64/libc.abilist   |  4 ++++

>  .../sysv/linux/riscv/rv64/libpthread.abilist  |  2 --

>  .../unix/sysv/linux/s390/s390-32/libc.abilist |  4 ++++

>  .../linux/s390/s390-32/libpthread.abilist     |  2 --

>  .../unix/sysv/linux/s390/s390-64/libc.abilist |  4 ++++

>  .../linux/s390/s390-64/libpthread.abilist     |  2 --

>  sysdeps/unix/sysv/linux/sh/be/libc.abilist    |  4 ++++

>  .../unix/sysv/linux/sh/be/libpthread.abilist  |  2 --

>  sysdeps/unix/sysv/linux/sh/le/libc.abilist    |  4 ++++

>  .../unix/sysv/linux/sh/le/libpthread.abilist  |  2 --

>  .../sysv/linux/sparc/sparc32/libc.abilist     |  4 ++++

>  .../linux/sparc/sparc32/libpthread.abilist    |  2 --

>  .../sysv/linux/sparc/sparc64/libc.abilist     |  4 ++++

>  .../linux/sparc/sparc64/libpthread.abilist    |  2 --

>  .../unix/sysv/linux/x86_64/64/libc.abilist    |  4 ++++

>  .../sysv/linux/x86_64/64/libpthread.abilist   |  2 --

>  .../unix/sysv/linux/x86_64/x32/libc.abilist   |  4 ++++

>  .../sysv/linux/x86_64/x32/libpthread.abilist  |  2 --

>  65 files changed, 154 insertions(+), 77 deletions(-)

> 

> diff --git a/nptl/Makefile b/nptl/Makefile

> index f81b2f64df..eb6c910656 100644

> --- a/nptl/Makefile

> +++ b/nptl/Makefile

> @@ -31,6 +31,7 @@ extra-libs-others := $(extra-libs)

>  routines = \

>    alloca_cutoff \

>    cancellation \

> +  cleanup \

>    cleanup_compat \

>    cleanup_defer_compat \

>    cleanup_routine \


Ok.

> @@ -186,7 +187,6 @@ shared-only-routines = forward

>  static-only-routines = pthread_atfork

>  

>  libpthread-routines = \

> -  cleanup \

>    cleanup_defer \

>    events \

>    libpthread-compat \


Ok.

> diff --git a/nptl/Versions b/nptl/Versions

> index 8c3e825083..329f0722a6 100644

> --- a/nptl/Versions

> +++ b/nptl/Versions

> @@ -143,6 +143,8 @@ libc {

>    }

>    GLIBC_2.3.3 {

>      __pthread_cleanup_routine;

> +    __pthread_register_cancel;

> +    __pthread_unregister_cancel;

>      __pthread_unwind_next;

>      pthread_attr_setaffinity_np;

>      pthread_barrierattr_getpshared;


Ok.

> @@ -224,6 +226,8 @@ libc {

>      __pthread_key_create;

>      __pthread_mutex_lock;

>      __pthread_mutex_unlock;

> +    __pthread_register_cancel;

> +    __pthread_unregister_cancel;

>      call_once;

>      cnd_broadcast;

>      cnd_destroy;


Ok.

> @@ -426,9 +430,7 @@ libpthread {

>    }

>  

>    GLIBC_2.3.3 {

> -    __pthread_register_cancel;

>      __pthread_register_cancel_defer;

> -    __pthread_unregister_cancel;

>      __pthread_unregister_cancel_restore;

>      pthread_attr_getaffinity_np;

>      pthread_setaffinity_np;


Ok.

> diff --git a/nptl/cleanup.c b/nptl/cleanup.c

> index ad1651577b..040786fc44 100644

> --- a/nptl/cleanup.c

> +++ b/nptl/cleanup.c

> @@ -18,11 +18,11 @@

>  

>  #include <stdlib.h>

>  #include "pthreadP.h"

> -

> +#include <shlib-compat.h>

>  

>  void

>  __cleanup_fct_attribute

> -__pthread_register_cancel (__pthread_unwind_buf_t *buf)

> +___pthread_register_cancel (__pthread_unwind_buf_t *buf)

>  {

>    struct pthread_unwind_buf *ibuf = (struct pthread_unwind_buf *) buf;

>    struct pthread *self = THREAD_SELF;

> @@ -34,15 +34,29 @@ __pthread_register_cancel (__pthread_unwind_buf_t *buf)

>    /* Store the new cleanup handler info.  */

>    THREAD_SETMEM (self, cleanup_jmp_buf, (struct pthread_unwind_buf *) buf);

>  }

> -hidden_def (__pthread_register_cancel)

> +versioned_symbol (libc, ___pthread_register_cancel,

> +                  __pthread_register_cancel, GLIBC_2_34);

> +libc_hidden_ver (___pthread_register_cancel, __pthread_register_cancel)

> +

> +#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_3_3, GLIBC_2_34)

> +compat_symbol (libpthread, ___pthread_register_cancel,

> +               __pthread_register_cancel, GLIBC_2_3_3);

> +#endif

>  

>  


Ok.

>  void

>  __cleanup_fct_attribute

> -__pthread_unregister_cancel (__pthread_unwind_buf_t *buf)

> +___pthread_unregister_cancel (__pthread_unwind_buf_t *buf)

>  {

>    struct pthread_unwind_buf *ibuf = (struct pthread_unwind_buf *) buf;

>  

>    THREAD_SETMEM (THREAD_SELF, cleanup_jmp_buf, ibuf->priv.data.prev);

>  }

> -hidden_def (__pthread_unregister_cancel)

> +versioned_symbol (libc, ___pthread_unregister_cancel,

> +                  __pthread_unregister_cancel, GLIBC_2_34);

> +libc_hidden_ver (___pthread_unregister_cancel, __pthread_unregister_cancel)

> +

> +#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_3_3, GLIBC_2_34)

> +compat_symbol (libpthread, ___pthread_unregister_cancel,

> +               __pthread_unregister_cancel, GLIBC_2_3_3);

> +#endif


Ok.

> diff --git a/nptl/pthreadP.h b/nptl/pthreadP.h

> index 7e3cef4709..1692788528 100644

> --- a/nptl/pthreadP.h

> +++ b/nptl/pthreadP.h

> @@ -277,21 +277,12 @@ extern void __pthread_unwind_next (__pthread_unwind_buf_t *__buf)

>  /* NB: No hidden proto for __pthread_unwind_next: inside glibc, the

>     legacy unwinding mechanism is used.  */

>  

> -#if IS_IN (libpthread)

>  extern void __pthread_register_cancel (__pthread_unwind_buf_t *__buf)

>       __cleanup_fct_attribute;

> +libc_hidden_proto (__pthread_register_cancel)

>  extern void __pthread_unregister_cancel (__pthread_unwind_buf_t *__buf)

>       __cleanup_fct_attribute;

> -hidden_proto (__pthread_register_cancel)

> -hidden_proto (__pthread_unregister_cancel)

> -# ifdef SHARED

> -/* The difference from __libc_unwind_link_get is that here, errors

> -   terminate the process.  */

> -struct unwind_link ;

> -struct unwind_link *__pthread_unwind_link_get (void) attribute_hidden;

> -# endif

> -#endif

> -

> +libc_hidden_proto (__pthread_unregister_cancel)

>  

>  /* Called when a thread reacts on a cancellation request.  */

>  static inline void


Ok.

> diff --git a/sysdeps/unix/sysv/linux/aarch64/libc.abilist b/sysdeps/unix/sysv/linux/aarch64/libc.abilist

> index 2d06bfef34..68afc4d209 100644

> --- a/sysdeps/unix/sysv/linux/aarch64/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/aarch64/libc.abilist

> @@ -350,6 +350,7 @@ GLIBC_2.17 __pthread_mutexattr_destroy F

>  GLIBC_2.17 __pthread_mutexattr_init F

>  GLIBC_2.17 __pthread_mutexattr_settype F

>  GLIBC_2.17 __pthread_once F

> +GLIBC_2.17 __pthread_register_cancel F

>  GLIBC_2.17 __pthread_rwlock_destroy F

>  GLIBC_2.17 __pthread_rwlock_init F

>  GLIBC_2.17 __pthread_rwlock_rdlock F

> @@ -358,6 +359,7 @@ GLIBC_2.17 __pthread_rwlock_trywrlock F

>  GLIBC_2.17 __pthread_rwlock_unlock F

>  GLIBC_2.17 __pthread_rwlock_wrlock F

>  GLIBC_2.17 __pthread_setspecific F

> +GLIBC_2.17 __pthread_unregister_cancel F

>  GLIBC_2.17 __pthread_unwind_next F

>  GLIBC_2.17 __ptsname_r_chk F

>  GLIBC_2.17 __pwrite64 F

> @@ -2305,6 +2307,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist

> index 2b21af13ad..633df92b7c 100644

> --- a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist

> @@ -1,7 +1,5 @@

>  GLIBC_2.17 __errno_location F

> -GLIBC_2.17 __pthread_register_cancel F

>  GLIBC_2.17 __pthread_register_cancel_defer F

> -GLIBC_2.17 __pthread_unregister_cancel F

>  GLIBC_2.17 __pthread_unregister_cancel_restore F

>  GLIBC_2.17 pthread_attr_getaffinity_np F

>  GLIBC_2.17 pthread_attr_getguardsize F

> diff --git a/sysdeps/unix/sysv/linux/alpha/libc.abilist b/sysdeps/unix/sysv/linux/alpha/libc.abilist

> index 8f1c1368ad..0eee74431c 100644

> --- a/sysdeps/unix/sysv/linux/alpha/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/alpha/libc.abilist

> @@ -2268,6 +2268,8 @@ GLIBC_2.3.2 pthread_cond_timedwait F

>  GLIBC_2.3.2 pthread_cond_wait F

>  GLIBC_2.3.2 strptime_l F

>  GLIBC_2.3.3 __pthread_cleanup_routine F

> +GLIBC_2.3.3 __pthread_register_cancel F

> +GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unwind_next F

>  GLIBC_2.3.3 _sys_siglist D 0x208

>  GLIBC_2.3.3 gnu_dev_major F

> @@ -2392,6 +2394,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist

> index 56ac3b7e71..fa996f19d7 100644

> --- a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist

> @@ -23,9 +23,7 @@ GLIBC_2.2.3 __libpthread_version_placeholder F

>  GLIBC_2.2.6 __libpthread_version_placeholder F

>  GLIBC_2.28 thrd_create F

>  GLIBC_2.3.2 __libpthread_version_placeholder F

> -GLIBC_2.3.3 __pthread_register_cancel F

>  GLIBC_2.3.3 __pthread_register_cancel_defer F

> -GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unregister_cancel_restore F

>  GLIBC_2.3.3 pthread_attr_getaffinity_np F

>  GLIBC_2.3.3 pthread_attr_setstack F

> diff --git a/sysdeps/unix/sysv/linux/arc/libc.abilist b/sysdeps/unix/sysv/linux/arc/libc.abilist

> index ae902ecdd0..3caf14215d 100644

> --- a/sysdeps/unix/sysv/linux/arc/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/arc/libc.abilist

> @@ -339,6 +339,7 @@ GLIBC_2.32 __pthread_mutexattr_destroy F

>  GLIBC_2.32 __pthread_mutexattr_init F

>  GLIBC_2.32 __pthread_mutexattr_settype F

>  GLIBC_2.32 __pthread_once F

> +GLIBC_2.32 __pthread_register_cancel F

>  GLIBC_2.32 __pthread_rwlock_destroy F

>  GLIBC_2.32 __pthread_rwlock_init F

>  GLIBC_2.32 __pthread_rwlock_rdlock F

> @@ -347,6 +348,7 @@ GLIBC_2.32 __pthread_rwlock_trywrlock F

>  GLIBC_2.32 __pthread_rwlock_unlock F

>  GLIBC_2.32 __pthread_rwlock_wrlock F

>  GLIBC_2.32 __pthread_setspecific F

> +GLIBC_2.32 __pthread_unregister_cancel F

>  GLIBC_2.32 __pthread_unwind_next F

>  GLIBC_2.32 __ptsname_r_chk F

>  GLIBC_2.32 __pwrite64 F

> @@ -2064,6 +2066,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/arc/libpthread.abilist b/sysdeps/unix/sysv/linux/arc/libpthread.abilist

> index 7a8ca30604..93f0474e31 100644

> --- a/sysdeps/unix/sysv/linux/arc/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/arc/libpthread.abilist

> @@ -1,7 +1,5 @@

>  GLIBC_2.32 __errno_location F

> -GLIBC_2.32 __pthread_register_cancel F

>  GLIBC_2.32 __pthread_register_cancel_defer F

> -GLIBC_2.32 __pthread_unregister_cancel F

>  GLIBC_2.32 __pthread_unregister_cancel_restore F

>  GLIBC_2.32 pthread_attr_getaffinity_np F

>  GLIBC_2.32 pthread_attr_getguardsize F

> diff --git a/sysdeps/unix/sysv/linux/arm/be/libc.abilist b/sysdeps/unix/sysv/linux/arm/be/libc.abilist

> index acc620643f..1cf65ff0c7 100644

> --- a/sysdeps/unix/sysv/linux/arm/be/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/arm/be/libc.abilist

> @@ -190,6 +190,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> @@ -627,6 +629,7 @@ GLIBC_2.4 __pthread_mutexattr_destroy F

>  GLIBC_2.4 __pthread_mutexattr_init F

>  GLIBC_2.4 __pthread_mutexattr_settype F

>  GLIBC_2.4 __pthread_once F

> +GLIBC_2.4 __pthread_register_cancel F

>  GLIBC_2.4 __pthread_rwlock_destroy F

>  GLIBC_2.4 __pthread_rwlock_init F

>  GLIBC_2.4 __pthread_rwlock_rdlock F

> @@ -635,6 +638,7 @@ GLIBC_2.4 __pthread_rwlock_trywrlock F

>  GLIBC_2.4 __pthread_rwlock_unlock F

>  GLIBC_2.4 __pthread_rwlock_wrlock F

>  GLIBC_2.4 __pthread_setspecific F

> +GLIBC_2.4 __pthread_unregister_cancel F

>  GLIBC_2.4 __pthread_unwind_next F

>  GLIBC_2.4 __ptsname_r_chk F

>  GLIBC_2.4 __pwrite64 F

> diff --git a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist

> index d629cc23e7..fcf9bae888 100644

> --- a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist

> @@ -7,9 +7,7 @@ GLIBC_2.30 __libpthread_version_placeholder F

>  GLIBC_2.31 __libpthread_version_placeholder F

>  GLIBC_2.4 __errno_location F

>  GLIBC_2.4 __libpthread_version_placeholder F

> -GLIBC_2.4 __pthread_register_cancel F

>  GLIBC_2.4 __pthread_register_cancel_defer F

> -GLIBC_2.4 __pthread_unregister_cancel F

>  GLIBC_2.4 __pthread_unregister_cancel_restore F

>  GLIBC_2.4 pthread_attr_getaffinity_np F

>  GLIBC_2.4 pthread_attr_getguardsize F

> diff --git a/sysdeps/unix/sysv/linux/arm/le/libc.abilist b/sysdeps/unix/sysv/linux/arm/le/libc.abilist

> index fd33a2317f..26428e0030 100644

> --- a/sysdeps/unix/sysv/linux/arm/le/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/arm/le/libc.abilist

> @@ -187,6 +187,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> @@ -624,6 +626,7 @@ GLIBC_2.4 __pthread_mutexattr_destroy F

>  GLIBC_2.4 __pthread_mutexattr_init F

>  GLIBC_2.4 __pthread_mutexattr_settype F

>  GLIBC_2.4 __pthread_once F

> +GLIBC_2.4 __pthread_register_cancel F

>  GLIBC_2.4 __pthread_rwlock_destroy F

>  GLIBC_2.4 __pthread_rwlock_init F

>  GLIBC_2.4 __pthread_rwlock_rdlock F

> @@ -632,6 +635,7 @@ GLIBC_2.4 __pthread_rwlock_trywrlock F

>  GLIBC_2.4 __pthread_rwlock_unlock F

>  GLIBC_2.4 __pthread_rwlock_wrlock F

>  GLIBC_2.4 __pthread_setspecific F

> +GLIBC_2.4 __pthread_unregister_cancel F

>  GLIBC_2.4 __pthread_unwind_next F

>  GLIBC_2.4 __ptsname_r_chk F

>  GLIBC_2.4 __pwrite64 F

> diff --git a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist

> index d629cc23e7..fcf9bae888 100644

> --- a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist

> @@ -7,9 +7,7 @@ GLIBC_2.30 __libpthread_version_placeholder F

>  GLIBC_2.31 __libpthread_version_placeholder F

>  GLIBC_2.4 __errno_location F

>  GLIBC_2.4 __libpthread_version_placeholder F

> -GLIBC_2.4 __pthread_register_cancel F

>  GLIBC_2.4 __pthread_register_cancel_defer F

> -GLIBC_2.4 __pthread_unregister_cancel F

>  GLIBC_2.4 __pthread_unregister_cancel_restore F

>  GLIBC_2.4 pthread_attr_getaffinity_np F

>  GLIBC_2.4 pthread_attr_getguardsize F

> diff --git a/sysdeps/unix/sysv/linux/csky/libc.abilist b/sysdeps/unix/sysv/linux/csky/libc.abilist

> index c1ac24c3a2..ae01f32a0c 100644

> --- a/sysdeps/unix/sysv/linux/csky/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/csky/libc.abilist

> @@ -343,6 +343,7 @@ GLIBC_2.29 __pthread_mutexattr_destroy F

>  GLIBC_2.29 __pthread_mutexattr_init F

>  GLIBC_2.29 __pthread_mutexattr_settype F

>  GLIBC_2.29 __pthread_once F

> +GLIBC_2.29 __pthread_register_cancel F

>  GLIBC_2.29 __pthread_rwlock_destroy F

>  GLIBC_2.29 __pthread_rwlock_init F

>  GLIBC_2.29 __pthread_rwlock_rdlock F

> @@ -351,6 +352,7 @@ GLIBC_2.29 __pthread_rwlock_trywrlock F

>  GLIBC_2.29 __pthread_rwlock_unlock F

>  GLIBC_2.29 __pthread_rwlock_wrlock F

>  GLIBC_2.29 __pthread_setspecific F

> +GLIBC_2.29 __pthread_unregister_cancel F

>  GLIBC_2.29 __pthread_unwind_next F

>  GLIBC_2.29 __ptsname_r_chk F

>  GLIBC_2.29 __pwrite64 F

> @@ -2248,6 +2250,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/csky/libpthread.abilist b/sysdeps/unix/sysv/linux/csky/libpthread.abilist

> index 4fc96fb0d8..df027689e8 100644

> --- a/sysdeps/unix/sysv/linux/csky/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/csky/libpthread.abilist

> @@ -1,7 +1,5 @@

>  GLIBC_2.29 __errno_location F

> -GLIBC_2.29 __pthread_register_cancel F

>  GLIBC_2.29 __pthread_register_cancel_defer F

> -GLIBC_2.29 __pthread_unregister_cancel F

>  GLIBC_2.29 __pthread_unregister_cancel_restore F

>  GLIBC_2.29 pthread_attr_getaffinity_np F

>  GLIBC_2.29 pthread_attr_getguardsize F

> diff --git a/sysdeps/unix/sysv/linux/hppa/libc.abilist b/sysdeps/unix/sysv/linux/hppa/libc.abilist

> index 29225ac912..166af94540 100644

> --- a/sysdeps/unix/sysv/linux/hppa/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/hppa/libc.abilist

> @@ -2103,6 +2103,8 @@ GLIBC_2.3.2 pthread_cond_timedwait F

>  GLIBC_2.3.2 pthread_cond_wait F

>  GLIBC_2.3.2 strptime_l F

>  GLIBC_2.3.3 __pthread_cleanup_routine F

> +GLIBC_2.3.3 __pthread_register_cancel F

> +GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unwind_next F

>  GLIBC_2.3.3 _sys_siglist D 0x104

>  GLIBC_2.3.3 gnu_dev_major F

> @@ -2199,6 +2201,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist

> index 77bf2e186d..071fd3e5eb 100644

> --- a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist

> @@ -20,9 +20,7 @@ GLIBC_2.2.3 __libpthread_version_placeholder F

>  GLIBC_2.2.6 __libpthread_version_placeholder F

>  GLIBC_2.28 thrd_create F

>  GLIBC_2.3.2 __libpthread_version_placeholder F

> -GLIBC_2.3.3 __pthread_register_cancel F

>  GLIBC_2.3.3 __pthread_register_cancel_defer F

> -GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unregister_cancel_restore F

>  GLIBC_2.3.3 pthread_attr_getaffinity_np F

>  GLIBC_2.3.3 pthread_setaffinity_np F

> diff --git a/sysdeps/unix/sysv/linux/i386/libc.abilist b/sysdeps/unix/sysv/linux/i386/libc.abilist

> index b5026ba906..37b5718e49 100644

> --- a/sysdeps/unix/sysv/linux/i386/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/i386/libc.abilist

> @@ -2283,6 +2283,8 @@ GLIBC_2.3.2 pthread_cond_timedwait F

>  GLIBC_2.3.2 pthread_cond_wait F

>  GLIBC_2.3.2 strptime_l F

>  GLIBC_2.3.3 __pthread_cleanup_routine F

> +GLIBC_2.3.3 __pthread_register_cancel F

> +GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unwind_next F

>  GLIBC_2.3.3 _sys_siglist D 0x104

>  GLIBC_2.3.3 gnu_dev_major F

> @@ -2382,6 +2384,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/i386/libpthread.abilist b/sysdeps/unix/sysv/linux/i386/libpthread.abilist

> index 6c36475ccb..a67cc86dcd 100644

> --- a/sysdeps/unix/sysv/linux/i386/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/i386/libpthread.abilist

> @@ -23,9 +23,7 @@ GLIBC_2.2.3 __libpthread_version_placeholder F

>  GLIBC_2.2.6 __libpthread_version_placeholder F

>  GLIBC_2.28 thrd_create F

>  GLIBC_2.3.2 __libpthread_version_placeholder F

> -GLIBC_2.3.3 __pthread_register_cancel F

>  GLIBC_2.3.3 __pthread_register_cancel_defer F

> -GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unregister_cancel_restore F

>  GLIBC_2.3.3 pthread_attr_getaffinity_np F

>  GLIBC_2.3.3 pthread_setaffinity_np F

> diff --git a/sysdeps/unix/sysv/linux/ia64/libc.abilist b/sysdeps/unix/sysv/linux/ia64/libc.abilist

> index f6fc393a21..2273cff802 100644

> --- a/sysdeps/unix/sysv/linux/ia64/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/ia64/libc.abilist

> @@ -2136,6 +2136,8 @@ GLIBC_2.3.2 pthread_cond_timedwait F

>  GLIBC_2.3.2 pthread_cond_wait F

>  GLIBC_2.3.2 strptime_l F

>  GLIBC_2.3.3 __pthread_cleanup_routine F

> +GLIBC_2.3.3 __pthread_register_cancel F

> +GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unwind_next F

>  GLIBC_2.3.3 _sys_siglist D 0x208

>  GLIBC_2.3.3 gnu_dev_major F

> @@ -2233,6 +2235,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist

> index 8db794d53e..2dbc645d17 100644

> --- a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist

> @@ -20,9 +20,7 @@ GLIBC_2.2.3 __libpthread_version_placeholder F

>  GLIBC_2.2.6 __libpthread_version_placeholder F

>  GLIBC_2.28 thrd_create F

>  GLIBC_2.3.2 __libpthread_version_placeholder F

> -GLIBC_2.3.3 __pthread_register_cancel F

>  GLIBC_2.3.3 __pthread_register_cancel_defer F

> -GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unregister_cancel_restore F

>  GLIBC_2.3.3 pthread_attr_getaffinity_np F

>  GLIBC_2.3.3 pthread_attr_setstack F

> diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist

> index dfb73924b9..54822cb0ff 100644

> --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist

> @@ -191,6 +191,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> @@ -613,6 +615,7 @@ GLIBC_2.4 __pthread_mutexattr_destroy F

>  GLIBC_2.4 __pthread_mutexattr_init F

>  GLIBC_2.4 __pthread_mutexattr_settype F

>  GLIBC_2.4 __pthread_once F

> +GLIBC_2.4 __pthread_register_cancel F

>  GLIBC_2.4 __pthread_rwlock_destroy F

>  GLIBC_2.4 __pthread_rwlock_init F

>  GLIBC_2.4 __pthread_rwlock_rdlock F

> @@ -621,6 +624,7 @@ GLIBC_2.4 __pthread_rwlock_trywrlock F

>  GLIBC_2.4 __pthread_rwlock_unlock F

>  GLIBC_2.4 __pthread_rwlock_wrlock F

>  GLIBC_2.4 __pthread_setspecific F

> +GLIBC_2.4 __pthread_unregister_cancel F

>  GLIBC_2.4 __pthread_unwind_next F

>  GLIBC_2.4 __ptsname_r_chk F

>  GLIBC_2.4 __pwrite64 F

> diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist

> index d629cc23e7..fcf9bae888 100644

> --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist

> @@ -7,9 +7,7 @@ GLIBC_2.30 __libpthread_version_placeholder F

>  GLIBC_2.31 __libpthread_version_placeholder F

>  GLIBC_2.4 __errno_location F

>  GLIBC_2.4 __libpthread_version_placeholder F

> -GLIBC_2.4 __pthread_register_cancel F

>  GLIBC_2.4 __pthread_register_cancel_defer F

> -GLIBC_2.4 __pthread_unregister_cancel F

>  GLIBC_2.4 __pthread_unregister_cancel_restore F

>  GLIBC_2.4 pthread_attr_getaffinity_np F

>  GLIBC_2.4 pthread_attr_getguardsize F

> diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist

> index 1a88ecbca4..78676b83eb 100644

> --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist

> @@ -2226,6 +2226,8 @@ GLIBC_2.3.2 pthread_cond_timedwait F

>  GLIBC_2.3.2 pthread_cond_wait F

>  GLIBC_2.3.2 strptime_l F

>  GLIBC_2.3.3 __pthread_cleanup_routine F

> +GLIBC_2.3.3 __pthread_register_cancel F

> +GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unwind_next F

>  GLIBC_2.3.3 _sys_siglist D 0x104

>  GLIBC_2.3.3 gnu_dev_major F

> @@ -2325,6 +2327,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist

> index 6c36475ccb..a67cc86dcd 100644

> --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist

> @@ -23,9 +23,7 @@ GLIBC_2.2.3 __libpthread_version_placeholder F

>  GLIBC_2.2.6 __libpthread_version_placeholder F

>  GLIBC_2.28 thrd_create F

>  GLIBC_2.3.2 __libpthread_version_placeholder F

> -GLIBC_2.3.3 __pthread_register_cancel F

>  GLIBC_2.3.3 __pthread_register_cancel_defer F

> -GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unregister_cancel_restore F

>  GLIBC_2.3.3 pthread_attr_getaffinity_np F

>  GLIBC_2.3.3 pthread_setaffinity_np F

> diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist

> index f07dba5ef0..ddc36aaa80 100644

> --- a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist

> @@ -351,6 +351,7 @@ GLIBC_2.18 __pthread_mutexattr_destroy F

>  GLIBC_2.18 __pthread_mutexattr_init F

>  GLIBC_2.18 __pthread_mutexattr_settype F

>  GLIBC_2.18 __pthread_once F

> +GLIBC_2.18 __pthread_register_cancel F

>  GLIBC_2.18 __pthread_rwlock_destroy F

>  GLIBC_2.18 __pthread_rwlock_init F

>  GLIBC_2.18 __pthread_rwlock_rdlock F

> @@ -359,6 +360,7 @@ GLIBC_2.18 __pthread_rwlock_trywrlock F

>  GLIBC_2.18 __pthread_rwlock_unlock F

>  GLIBC_2.18 __pthread_rwlock_wrlock F

>  GLIBC_2.18 __pthread_setspecific F

> +GLIBC_2.18 __pthread_unregister_cancel F

>  GLIBC_2.18 __pthread_unwind_next F

>  GLIBC_2.18 __ptsname_r_chk F

>  GLIBC_2.18 __pwrite64 F

> @@ -2299,6 +2301,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist

> index 64fff0e0e0..f3a5b67d41 100644

> --- a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist

> @@ -1,7 +1,5 @@

>  GLIBC_2.18 __errno_location F

> -GLIBC_2.18 __pthread_register_cancel F

>  GLIBC_2.18 __pthread_register_cancel_defer F

> -GLIBC_2.18 __pthread_unregister_cancel F

>  GLIBC_2.18 __pthread_unregister_cancel_restore F

>  GLIBC_2.18 pthread_attr_getaffinity_np F

>  GLIBC_2.18 pthread_attr_getguardsize F

> diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist

> index 688de4ee35..410cf82c0e 100644

> --- a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist

> @@ -351,6 +351,7 @@ GLIBC_2.18 __pthread_mutexattr_destroy F

>  GLIBC_2.18 __pthread_mutexattr_init F

>  GLIBC_2.18 __pthread_mutexattr_settype F

>  GLIBC_2.18 __pthread_once F

> +GLIBC_2.18 __pthread_register_cancel F

>  GLIBC_2.18 __pthread_rwlock_destroy F

>  GLIBC_2.18 __pthread_rwlock_init F

>  GLIBC_2.18 __pthread_rwlock_rdlock F

> @@ -359,6 +360,7 @@ GLIBC_2.18 __pthread_rwlock_trywrlock F

>  GLIBC_2.18 __pthread_rwlock_unlock F

>  GLIBC_2.18 __pthread_rwlock_wrlock F

>  GLIBC_2.18 __pthread_setspecific F

> +GLIBC_2.18 __pthread_unregister_cancel F

>  GLIBC_2.18 __pthread_unwind_next F

>  GLIBC_2.18 __ptsname_r_chk F

>  GLIBC_2.18 __pwrite64 F

> @@ -2296,6 +2298,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist

> index 64fff0e0e0..f3a5b67d41 100644

> --- a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist

> @@ -1,7 +1,5 @@

>  GLIBC_2.18 __errno_location F

> -GLIBC_2.18 __pthread_register_cancel F

>  GLIBC_2.18 __pthread_register_cancel_defer F

> -GLIBC_2.18 __pthread_unregister_cancel F

>  GLIBC_2.18 __pthread_unregister_cancel_restore F

>  GLIBC_2.18 pthread_attr_getaffinity_np F

>  GLIBC_2.18 pthread_attr_getguardsize F

> diff --git a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist

> index 7e82eadb1d..9a2b97b6e2 100644

> --- a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist

> @@ -2192,6 +2192,8 @@ GLIBC_2.3.2 pthread_cond_timedwait F

>  GLIBC_2.3.2 pthread_cond_wait F

>  GLIBC_2.3.2 strptime_l F

>  GLIBC_2.3.3 __pthread_cleanup_routine F

> +GLIBC_2.3.3 __pthread_register_cancel F

> +GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unwind_next F

>  GLIBC_2.3.3 _sys_siglist D 0x200

>  GLIBC_2.3.3 gnu_dev_major F

> @@ -2288,6 +2290,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist

> index 8a95354f94..26ae04300c 100644

> --- a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist

> @@ -21,9 +21,7 @@ GLIBC_2.2.3 __libpthread_version_placeholder F

>  GLIBC_2.2.6 __libpthread_version_placeholder F

>  GLIBC_2.28 thrd_create F

>  GLIBC_2.3.2 __libpthread_version_placeholder F

> -GLIBC_2.3.3 __pthread_register_cancel F

>  GLIBC_2.3.3 __pthread_register_cancel_defer F

> -GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unregister_cancel_restore F

>  GLIBC_2.3.3 pthread_attr_getaffinity_np F

>  GLIBC_2.3.3 pthread_attr_setstack F

> diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist

> index 5891b9b563..e73613e7d7 100644

> --- a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist

> @@ -2190,6 +2190,8 @@ GLIBC_2.3.2 pthread_cond_timedwait F

>  GLIBC_2.3.2 pthread_cond_wait F

>  GLIBC_2.3.2 strptime_l F

>  GLIBC_2.3.3 __pthread_cleanup_routine F

> +GLIBC_2.3.3 __pthread_register_cancel F

> +GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unwind_next F

>  GLIBC_2.3.3 _sys_siglist D 0x200

>  GLIBC_2.3.3 gnu_dev_major F

> @@ -2286,6 +2288,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist

> index 8a95354f94..26ae04300c 100644

> --- a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist

> @@ -21,9 +21,7 @@ GLIBC_2.2.3 __libpthread_version_placeholder F

>  GLIBC_2.2.6 __libpthread_version_placeholder F

>  GLIBC_2.28 thrd_create F

>  GLIBC_2.3.2 __libpthread_version_placeholder F

> -GLIBC_2.3.3 __pthread_register_cancel F

>  GLIBC_2.3.3 __pthread_register_cancel_defer F

> -GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unregister_cancel_restore F

>  GLIBC_2.3.3 pthread_attr_getaffinity_np F

>  GLIBC_2.3.3 pthread_attr_setstack F

> diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist

> index dbf9dcf588..7512fb6e4e 100644

> --- a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist

> @@ -2198,6 +2198,8 @@ GLIBC_2.3.2 pthread_cond_timedwait F

>  GLIBC_2.3.2 pthread_cond_wait F

>  GLIBC_2.3.2 strptime_l F

>  GLIBC_2.3.3 __pthread_cleanup_routine F

> +GLIBC_2.3.3 __pthread_register_cancel F

> +GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unwind_next F

>  GLIBC_2.3.3 _sys_siglist D 0x200

>  GLIBC_2.3.3 gnu_dev_major F

> @@ -2294,6 +2296,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist

> index ed31156fe5..41578b8c93 100644

> --- a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist

> @@ -2191,6 +2191,8 @@ GLIBC_2.3.2 pthread_cond_timedwait F

>  GLIBC_2.3.2 pthread_cond_wait F

>  GLIBC_2.3.2 strptime_l F

>  GLIBC_2.3.3 __pthread_cleanup_routine F

> +GLIBC_2.3.3 __pthread_register_cancel F

> +GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unwind_next F

>  GLIBC_2.3.3 _sys_siglist D 0x400

>  GLIBC_2.3.3 gnu_dev_major F

> @@ -2288,6 +2290,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/nios2/libc.abilist b/sysdeps/unix/sysv/linux/nios2/libc.abilist

> index bca4034be2..34fff4c240 100644

> --- a/sysdeps/unix/sysv/linux/nios2/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/nios2/libc.abilist

> @@ -388,6 +388,7 @@ GLIBC_2.21 __pthread_mutexattr_destroy F

>  GLIBC_2.21 __pthread_mutexattr_init F

>  GLIBC_2.21 __pthread_mutexattr_settype F

>  GLIBC_2.21 __pthread_once F

> +GLIBC_2.21 __pthread_register_cancel F

>  GLIBC_2.21 __pthread_rwlock_destroy F

>  GLIBC_2.21 __pthread_rwlock_init F

>  GLIBC_2.21 __pthread_rwlock_rdlock F

> @@ -396,6 +397,7 @@ GLIBC_2.21 __pthread_rwlock_trywrlock F

>  GLIBC_2.21 __pthread_rwlock_unlock F

>  GLIBC_2.21 __pthread_rwlock_wrlock F

>  GLIBC_2.21 __pthread_setspecific F

> +GLIBC_2.21 __pthread_unregister_cancel F

>  GLIBC_2.21 __pthread_unwind_next F

>  GLIBC_2.21 __ptsname_r_chk F

>  GLIBC_2.21 __pwrite64 F

> @@ -2338,6 +2340,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist

> index 4dec581eb6..9bee776f4f 100644

> --- a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist

> @@ -1,7 +1,5 @@

>  GLIBC_2.21 __errno_location F

> -GLIBC_2.21 __pthread_register_cancel F

>  GLIBC_2.21 __pthread_register_cancel_defer F

> -GLIBC_2.21 __pthread_unregister_cancel F

>  GLIBC_2.21 __pthread_unregister_cancel_restore F

>  GLIBC_2.21 pthread_attr_getaffinity_np F

>  GLIBC_2.21 pthread_attr_getguardsize F

> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist

> index 5de9636022..8b8adc06ce 100644

> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist

> @@ -2230,6 +2230,8 @@ GLIBC_2.3.2 pthread_cond_timedwait F

>  GLIBC_2.3.2 pthread_cond_wait F

>  GLIBC_2.3.2 strptime_l F

>  GLIBC_2.3.3 __pthread_cleanup_routine F

> +GLIBC_2.3.3 __pthread_register_cancel F

> +GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unwind_next F

>  GLIBC_2.3.3 _sys_siglist D 0x104

>  GLIBC_2.3.3 getcontext F

> @@ -2352,6 +2354,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist

> index cf9b765b38..a30be35a7a 100644

> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist

> @@ -23,9 +23,7 @@ GLIBC_2.2.3 __libpthread_version_placeholder F

>  GLIBC_2.2.6 __libpthread_version_placeholder F

>  GLIBC_2.28 thrd_create F

>  GLIBC_2.3.2 __libpthread_version_placeholder F

> -GLIBC_2.3.3 __pthread_register_cancel F

>  GLIBC_2.3.3 __pthread_register_cancel_defer F

> -GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unregister_cancel_restore F

>  GLIBC_2.3.3 pthread_attr_getaffinity_np F

>  GLIBC_2.3.3 pthread_setaffinity_np F

> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist

> index 10cb492163..5754fd3589 100644

> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist

> @@ -2263,6 +2263,8 @@ GLIBC_2.3.2 pthread_cond_timedwait F

>  GLIBC_2.3.2 pthread_cond_wait F

>  GLIBC_2.3.2 strptime_l F

>  GLIBC_2.3.3 __pthread_cleanup_routine F

> +GLIBC_2.3.3 __pthread_register_cancel F

> +GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unwind_next F

>  GLIBC_2.3.3 _sys_siglist D 0x104

>  GLIBC_2.3.3 getcontext F

> @@ -2385,6 +2387,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist

> index 4d72e24c22..47812d2be1 100644

> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist

> @@ -2083,6 +2083,8 @@ GLIBC_2.3.2 pthread_cond_timedwait F

>  GLIBC_2.3.2 pthread_cond_wait F

>  GLIBC_2.3.2 strptime_l F

>  GLIBC_2.3.3 __pthread_cleanup_routine F

> +GLIBC_2.3.3 __pthread_register_cancel F

> +GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unwind_next F

>  GLIBC_2.3.3 _sys_siglist D 0x208

>  GLIBC_2.3.3 gnu_dev_major F

> @@ -2200,6 +2202,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist

> index 66f04c69a2..5129d976a1 100644

> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist

> @@ -18,9 +18,7 @@ GLIBC_2.3 pthread_getconcurrency F

>  GLIBC_2.3 pthread_getcpuclockid F

>  GLIBC_2.3 pthread_setconcurrency F

>  GLIBC_2.3.2 __libpthread_version_placeholder F

> -GLIBC_2.3.3 __pthread_register_cancel F

>  GLIBC_2.3.3 __pthread_register_cancel_defer F

> -GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unregister_cancel_restore F

>  GLIBC_2.3.3 pthread_attr_getaffinity_np F

>  GLIBC_2.3.3 pthread_setaffinity_np F

> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist

> index d3ac4aeefc..9af9e3fba6 100644

> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist

> @@ -436,6 +436,7 @@ GLIBC_2.17 __pthread_mutexattr_destroy F

>  GLIBC_2.17 __pthread_mutexattr_init F

>  GLIBC_2.17 __pthread_mutexattr_settype F

>  GLIBC_2.17 __pthread_once F

> +GLIBC_2.17 __pthread_register_cancel F

>  GLIBC_2.17 __pthread_rwlock_destroy F

>  GLIBC_2.17 __pthread_rwlock_init F

>  GLIBC_2.17 __pthread_rwlock_rdlock F

> @@ -444,6 +445,7 @@ GLIBC_2.17 __pthread_rwlock_trywrlock F

>  GLIBC_2.17 __pthread_rwlock_unlock F

>  GLIBC_2.17 __pthread_rwlock_wrlock F

>  GLIBC_2.17 __pthread_setspecific F

> +GLIBC_2.17 __pthread_unregister_cancel F

>  GLIBC_2.17 __pthread_unwind_next F

>  GLIBC_2.17 __ptsname_r_chk F

>  GLIBC_2.17 __pwrite64 F

> @@ -2501,6 +2503,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist

> index 2b21af13ad..633df92b7c 100644

> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist

> @@ -1,7 +1,5 @@

>  GLIBC_2.17 __errno_location F

> -GLIBC_2.17 __pthread_register_cancel F

>  GLIBC_2.17 __pthread_register_cancel_defer F

> -GLIBC_2.17 __pthread_unregister_cancel F

>  GLIBC_2.17 __pthread_unregister_cancel_restore F

>  GLIBC_2.17 pthread_attr_getaffinity_np F

>  GLIBC_2.17 pthread_attr_getguardsize F

> diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist

> index dcef189dcc..ce2057f817 100644

> --- a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist

> @@ -336,6 +336,7 @@ GLIBC_2.33 __pthread_mutexattr_destroy F

>  GLIBC_2.33 __pthread_mutexattr_init F

>  GLIBC_2.33 __pthread_mutexattr_settype F

>  GLIBC_2.33 __pthread_once F

> +GLIBC_2.33 __pthread_register_cancel F

>  GLIBC_2.33 __pthread_rwlock_destroy F

>  GLIBC_2.33 __pthread_rwlock_init F

>  GLIBC_2.33 __pthread_rwlock_rdlock F

> @@ -344,6 +345,7 @@ GLIBC_2.33 __pthread_rwlock_trywrlock F

>  GLIBC_2.33 __pthread_rwlock_unlock F

>  GLIBC_2.33 __pthread_rwlock_wrlock F

>  GLIBC_2.33 __pthread_setspecific F

> +GLIBC_2.33 __pthread_unregister_cancel F

>  GLIBC_2.33 __pthread_unwind_next F

>  GLIBC_2.33 __ptsname_r_chk F

>  GLIBC_2.33 __pwrite64 F

> @@ -2066,6 +2068,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist

> index ccfa97c0e5..a1b36b3b46 100644

> --- a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist

> @@ -1,7 +1,5 @@

>  GLIBC_2.33 __errno_location F

> -GLIBC_2.33 __pthread_register_cancel F

>  GLIBC_2.33 __pthread_register_cancel_defer F

> -GLIBC_2.33 __pthread_unregister_cancel F

>  GLIBC_2.33 __pthread_unregister_cancel_restore F

>  GLIBC_2.33 pthread_attr_getaffinity_np F

>  GLIBC_2.33 pthread_attr_getguardsize F

> diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist

> index 806d787b3f..e5ea5fd6e0 100644

> --- a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist

> @@ -347,6 +347,7 @@ GLIBC_2.27 __pthread_mutexattr_destroy F

>  GLIBC_2.27 __pthread_mutexattr_init F

>  GLIBC_2.27 __pthread_mutexattr_settype F

>  GLIBC_2.27 __pthread_once F

> +GLIBC_2.27 __pthread_register_cancel F

>  GLIBC_2.27 __pthread_rwlock_destroy F

>  GLIBC_2.27 __pthread_rwlock_init F

>  GLIBC_2.27 __pthread_rwlock_rdlock F

> @@ -355,6 +356,7 @@ GLIBC_2.27 __pthread_rwlock_trywrlock F

>  GLIBC_2.27 __pthread_rwlock_unlock F

>  GLIBC_2.27 __pthread_rwlock_wrlock F

>  GLIBC_2.27 __pthread_setspecific F

> +GLIBC_2.27 __pthread_unregister_cancel F

>  GLIBC_2.27 __pthread_unwind_next F

>  GLIBC_2.27 __ptsname_r_chk F

>  GLIBC_2.27 __pwrite64 F

> @@ -2266,6 +2268,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist

> index dbb1a42922..e8dc7c3910 100644

> --- a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist

> @@ -1,7 +1,5 @@

>  GLIBC_2.27 __errno_location F

> -GLIBC_2.27 __pthread_register_cancel F

>  GLIBC_2.27 __pthread_register_cancel_defer F

> -GLIBC_2.27 __pthread_unregister_cancel F

>  GLIBC_2.27 __pthread_unregister_cancel_restore F

>  GLIBC_2.27 pthread_attr_getaffinity_np F

>  GLIBC_2.27 pthread_attr_getguardsize F

> diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist

> index 52f3cc5a97..fbb75ccf9d 100644

> --- a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist

> @@ -2239,6 +2239,8 @@ GLIBC_2.3.2 pthread_cond_timedwait F

>  GLIBC_2.3.2 pthread_cond_wait F

>  GLIBC_2.3.2 strptime_l F

>  GLIBC_2.3.3 __pthread_cleanup_routine F

> +GLIBC_2.3.3 __pthread_register_cancel F

> +GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unwind_next F

>  GLIBC_2.3.3 _sys_siglist D 0x104

>  GLIBC_2.3.3 gnu_dev_major F

> @@ -2350,6 +2352,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist

> index caeaf1c3c8..f5deee544b 100644

> --- a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist

> @@ -24,9 +24,7 @@ GLIBC_2.2.3 __libpthread_version_placeholder F

>  GLIBC_2.2.6 __libpthread_version_placeholder F

>  GLIBC_2.28 thrd_create F

>  GLIBC_2.3.2 __libpthread_version_placeholder F

> -GLIBC_2.3.3 __pthread_register_cancel F

>  GLIBC_2.3.3 __pthread_register_cancel_defer F

> -GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unregister_cancel_restore F

>  GLIBC_2.3.3 pthread_attr_getaffinity_np F

>  GLIBC_2.3.3 pthread_setaffinity_np F

> diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist

> index 96dcf91860..7c1e46cdf0 100644

> --- a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist

> @@ -2129,6 +2129,8 @@ GLIBC_2.3.2 pthread_cond_timedwait F

>  GLIBC_2.3.2 pthread_cond_wait F

>  GLIBC_2.3.2 strptime_l F

>  GLIBC_2.3.3 __pthread_cleanup_routine F

> +GLIBC_2.3.3 __pthread_register_cancel F

> +GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unwind_next F

>  GLIBC_2.3.3 _sys_siglist D 0x208

>  GLIBC_2.3.3 gnu_dev_major F

> @@ -2237,6 +2239,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist

> index 396dff1d9f..9fdcccffb0 100644

> --- a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist

> @@ -21,9 +21,7 @@ GLIBC_2.2.3 __libpthread_version_placeholder F

>  GLIBC_2.2.6 __libpthread_version_placeholder F

>  GLIBC_2.28 thrd_create F

>  GLIBC_2.3.2 __libpthread_version_placeholder F

> -GLIBC_2.3.3 __pthread_register_cancel F

>  GLIBC_2.3.3 __pthread_register_cancel_defer F

> -GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unregister_cancel_restore F

>  GLIBC_2.3.3 pthread_attr_getaffinity_np F

>  GLIBC_2.3.3 pthread_setaffinity_np F

> diff --git a/sysdeps/unix/sysv/linux/sh/be/libc.abilist b/sysdeps/unix/sysv/linux/sh/be/libc.abilist

> index 0360f65963..bfa7943954 100644

> --- a/sysdeps/unix/sysv/linux/sh/be/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/sh/be/libc.abilist

> @@ -2107,6 +2107,8 @@ GLIBC_2.3.2 pthread_cond_timedwait F

>  GLIBC_2.3.2 pthread_cond_wait F

>  GLIBC_2.3.2 strptime_l F

>  GLIBC_2.3.3 __pthread_cleanup_routine F

> +GLIBC_2.3.3 __pthread_register_cancel F

> +GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unwind_next F

>  GLIBC_2.3.3 _sys_siglist D 0x104

>  GLIBC_2.3.3 gnu_dev_major F

> @@ -2206,6 +2208,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist

> index 77bf2e186d..071fd3e5eb 100644

> --- a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist

> @@ -20,9 +20,7 @@ GLIBC_2.2.3 __libpthread_version_placeholder F

>  GLIBC_2.2.6 __libpthread_version_placeholder F

>  GLIBC_2.28 thrd_create F

>  GLIBC_2.3.2 __libpthread_version_placeholder F

> -GLIBC_2.3.3 __pthread_register_cancel F

>  GLIBC_2.3.3 __pthread_register_cancel_defer F

> -GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unregister_cancel_restore F

>  GLIBC_2.3.3 pthread_attr_getaffinity_np F

>  GLIBC_2.3.3 pthread_setaffinity_np F

> diff --git a/sysdeps/unix/sysv/linux/sh/le/libc.abilist b/sysdeps/unix/sysv/linux/sh/le/libc.abilist

> index c99300d9fc..440eed94c8 100644

> --- a/sysdeps/unix/sysv/linux/sh/le/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/sh/le/libc.abilist

> @@ -2107,6 +2107,8 @@ GLIBC_2.3.2 pthread_cond_timedwait F

>  GLIBC_2.3.2 pthread_cond_wait F

>  GLIBC_2.3.2 strptime_l F

>  GLIBC_2.3.3 __pthread_cleanup_routine F

> +GLIBC_2.3.3 __pthread_register_cancel F

> +GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unwind_next F

>  GLIBC_2.3.3 _sys_siglist D 0x104

>  GLIBC_2.3.3 gnu_dev_major F

> @@ -2203,6 +2205,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist

> index 77bf2e186d..071fd3e5eb 100644

> --- a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist

> @@ -20,9 +20,7 @@ GLIBC_2.2.3 __libpthread_version_placeholder F

>  GLIBC_2.2.6 __libpthread_version_placeholder F

>  GLIBC_2.28 thrd_create F

>  GLIBC_2.3.2 __libpthread_version_placeholder F

> -GLIBC_2.3.3 __pthread_register_cancel F

>  GLIBC_2.3.3 __pthread_register_cancel_defer F

> -GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unregister_cancel_restore F

>  GLIBC_2.3.3 pthread_attr_getaffinity_np F

>  GLIBC_2.3.3 pthread_setaffinity_np F

> diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist

> index 1d3f00ec04..2e3f5ec667 100644

> --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist

> @@ -2233,6 +2233,8 @@ GLIBC_2.3.2 pthread_cond_timedwait F

>  GLIBC_2.3.2 pthread_cond_wait F

>  GLIBC_2.3.2 strptime_l F

>  GLIBC_2.3.3 __pthread_cleanup_routine F

> +GLIBC_2.3.3 __pthread_register_cancel F

> +GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unwind_next F

>  GLIBC_2.3.3 _sys_siglist D 0x104

>  GLIBC_2.3.3 gnu_dev_major F

> @@ -2341,6 +2343,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist

> index 56ac3b7e71..fa996f19d7 100644

> --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist

> @@ -23,9 +23,7 @@ GLIBC_2.2.3 __libpthread_version_placeholder F

>  GLIBC_2.2.6 __libpthread_version_placeholder F

>  GLIBC_2.28 thrd_create F

>  GLIBC_2.3.2 __libpthread_version_placeholder F

> -GLIBC_2.3.3 __pthread_register_cancel F

>  GLIBC_2.3.3 __pthread_register_cancel_defer F

> -GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unregister_cancel_restore F

>  GLIBC_2.3.3 pthread_attr_getaffinity_np F

>  GLIBC_2.3.3 pthread_attr_setstack F

> diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist

> index eb222daa74..1a88c40a3a 100644

> --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist

> @@ -2158,6 +2158,8 @@ GLIBC_2.3.2 pthread_cond_timedwait F

>  GLIBC_2.3.2 pthread_cond_wait F

>  GLIBC_2.3.2 strptime_l F

>  GLIBC_2.3.3 __pthread_cleanup_routine F

> +GLIBC_2.3.3 __pthread_register_cancel F

> +GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unwind_next F

>  GLIBC_2.3.3 _sys_siglist D 0x208

>  GLIBC_2.3.3 gnu_dev_major F

> @@ -2254,6 +2256,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist

> index 8db794d53e..2dbc645d17 100644

> --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist

> @@ -20,9 +20,7 @@ GLIBC_2.2.3 __libpthread_version_placeholder F

>  GLIBC_2.2.6 __libpthread_version_placeholder F

>  GLIBC_2.28 thrd_create F

>  GLIBC_2.3.2 __libpthread_version_placeholder F

> -GLIBC_2.3.3 __pthread_register_cancel F

>  GLIBC_2.3.3 __pthread_register_cancel_defer F

> -GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unregister_cancel_restore F

>  GLIBC_2.3.3 pthread_attr_getaffinity_np F

>  GLIBC_2.3.3 pthread_attr_setstack F

> diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist

> index c34f50d673..c0c3538772 100644

> --- a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist

> @@ -2117,6 +2117,8 @@ GLIBC_2.3.2 pthread_cond_timedwait F

>  GLIBC_2.3.2 pthread_cond_wait F

>  GLIBC_2.3.2 strptime_l F

>  GLIBC_2.3.3 __pthread_cleanup_routine F

> +GLIBC_2.3.3 __pthread_register_cancel F

> +GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unwind_next F

>  GLIBC_2.3.3 _sys_siglist D 0x208

>  GLIBC_2.3.3 gnu_dev_major F

> @@ -2215,6 +2217,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist

> index acfc54c409..e835a66869 100644

> --- a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist

> @@ -19,9 +19,7 @@ GLIBC_2.2.5 pthread_setconcurrency F

>  GLIBC_2.2.6 __libpthread_version_placeholder F

>  GLIBC_2.28 thrd_create F

>  GLIBC_2.3.2 __libpthread_version_placeholder F

> -GLIBC_2.3.3 __pthread_register_cancel F

>  GLIBC_2.3.3 __pthread_register_cancel_defer F

> -GLIBC_2.3.3 __pthread_unregister_cancel F

>  GLIBC_2.3.3 __pthread_unregister_cancel_restore F

>  GLIBC_2.3.3 pthread_attr_getaffinity_np F

>  GLIBC_2.3.3 pthread_setaffinity_np F

> diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist

> index 4fae69daff..cea07a7812 100644

> --- a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist

> +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist

> @@ -351,6 +351,7 @@ GLIBC_2.16 __pthread_mutexattr_destroy F

>  GLIBC_2.16 __pthread_mutexattr_init F

>  GLIBC_2.16 __pthread_mutexattr_settype F

>  GLIBC_2.16 __pthread_once F

> +GLIBC_2.16 __pthread_register_cancel F

>  GLIBC_2.16 __pthread_rwlock_destroy F

>  GLIBC_2.16 __pthread_rwlock_init F

>  GLIBC_2.16 __pthread_rwlock_rdlock F

> @@ -359,6 +360,7 @@ GLIBC_2.16 __pthread_rwlock_trywrlock F

>  GLIBC_2.16 __pthread_rwlock_unlock F

>  GLIBC_2.16 __pthread_rwlock_wrlock F

>  GLIBC_2.16 __pthread_setspecific F

> +GLIBC_2.16 __pthread_unregister_cancel F

>  GLIBC_2.16 __pthread_unwind_next F

>  GLIBC_2.16 __ptsname_r_chk F

>  GLIBC_2.16 __pwrite64 F

> @@ -2320,6 +2322,8 @@ GLIBC_2.34 __pthread_cleanup_routine F

>  GLIBC_2.34 __pthread_key_create F

>  GLIBC_2.34 __pthread_mutex_lock F

>  GLIBC_2.34 __pthread_mutex_unlock F

> +GLIBC_2.34 __pthread_register_cancel F

> +GLIBC_2.34 __pthread_unregister_cancel F

>  GLIBC_2.34 __pthread_unwind_next F

>  GLIBC_2.34 call_once F

>  GLIBC_2.34 cnd_broadcast F

> diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist

> index fe8c2eec64..fc978dfbe6 100644

> --- a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist

> +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist

> @@ -1,7 +1,5 @@

>  GLIBC_2.16 __errno_location F

> -GLIBC_2.16 __pthread_register_cancel F

>  GLIBC_2.16 __pthread_register_cancel_defer F

> -GLIBC_2.16 __pthread_unregister_cancel F

>  GLIBC_2.16 __pthread_unregister_cancel_restore F

>  GLIBC_2.16 pthread_attr_getaffinity_np F

>  GLIBC_2.16 pthread_attr_getguardsize F

>


Ok.

Patch

diff --git a/nptl/Makefile b/nptl/Makefile
index f81b2f64df..eb6c910656 100644
--- a/nptl/Makefile
+++ b/nptl/Makefile
@@ -31,6 +31,7 @@  extra-libs-others := $(extra-libs)
 routines = \
   alloca_cutoff \
   cancellation \
+  cleanup \
   cleanup_compat \
   cleanup_defer_compat \
   cleanup_routine \
@@ -186,7 +187,6 @@  shared-only-routines = forward
 static-only-routines = pthread_atfork
 
 libpthread-routines = \
-  cleanup \
   cleanup_defer \
   events \
   libpthread-compat \
diff --git a/nptl/Versions b/nptl/Versions
index 8c3e825083..329f0722a6 100644
--- a/nptl/Versions
+++ b/nptl/Versions
@@ -143,6 +143,8 @@  libc {
   }
   GLIBC_2.3.3 {
     __pthread_cleanup_routine;
+    __pthread_register_cancel;
+    __pthread_unregister_cancel;
     __pthread_unwind_next;
     pthread_attr_setaffinity_np;
     pthread_barrierattr_getpshared;
@@ -224,6 +226,8 @@  libc {
     __pthread_key_create;
     __pthread_mutex_lock;
     __pthread_mutex_unlock;
+    __pthread_register_cancel;
+    __pthread_unregister_cancel;
     call_once;
     cnd_broadcast;
     cnd_destroy;
@@ -426,9 +430,7 @@  libpthread {
   }
 
   GLIBC_2.3.3 {
-    __pthread_register_cancel;
     __pthread_register_cancel_defer;
-    __pthread_unregister_cancel;
     __pthread_unregister_cancel_restore;
     pthread_attr_getaffinity_np;
     pthread_setaffinity_np;
diff --git a/nptl/cleanup.c b/nptl/cleanup.c
index ad1651577b..040786fc44 100644
--- a/nptl/cleanup.c
+++ b/nptl/cleanup.c
@@ -18,11 +18,11 @@ 
 
 #include <stdlib.h>
 #include "pthreadP.h"
-
+#include <shlib-compat.h>
 
 void
 __cleanup_fct_attribute
-__pthread_register_cancel (__pthread_unwind_buf_t *buf)
+___pthread_register_cancel (__pthread_unwind_buf_t *buf)
 {
   struct pthread_unwind_buf *ibuf = (struct pthread_unwind_buf *) buf;
   struct pthread *self = THREAD_SELF;
@@ -34,15 +34,29 @@  __pthread_register_cancel (__pthread_unwind_buf_t *buf)
   /* Store the new cleanup handler info.  */
   THREAD_SETMEM (self, cleanup_jmp_buf, (struct pthread_unwind_buf *) buf);
 }
-hidden_def (__pthread_register_cancel)
+versioned_symbol (libc, ___pthread_register_cancel,
+                  __pthread_register_cancel, GLIBC_2_34);
+libc_hidden_ver (___pthread_register_cancel, __pthread_register_cancel)
+
+#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_3_3, GLIBC_2_34)
+compat_symbol (libpthread, ___pthread_register_cancel,
+               __pthread_register_cancel, GLIBC_2_3_3);
+#endif
 
 
 void
 __cleanup_fct_attribute
-__pthread_unregister_cancel (__pthread_unwind_buf_t *buf)
+___pthread_unregister_cancel (__pthread_unwind_buf_t *buf)
 {
   struct pthread_unwind_buf *ibuf = (struct pthread_unwind_buf *) buf;
 
   THREAD_SETMEM (THREAD_SELF, cleanup_jmp_buf, ibuf->priv.data.prev);
 }
-hidden_def (__pthread_unregister_cancel)
+versioned_symbol (libc, ___pthread_unregister_cancel,
+                  __pthread_unregister_cancel, GLIBC_2_34);
+libc_hidden_ver (___pthread_unregister_cancel, __pthread_unregister_cancel)
+
+#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_3_3, GLIBC_2_34)
+compat_symbol (libpthread, ___pthread_unregister_cancel,
+               __pthread_unregister_cancel, GLIBC_2_3_3);
+#endif
diff --git a/nptl/pthreadP.h b/nptl/pthreadP.h
index 7e3cef4709..1692788528 100644
--- a/nptl/pthreadP.h
+++ b/nptl/pthreadP.h
@@ -277,21 +277,12 @@  extern void __pthread_unwind_next (__pthread_unwind_buf_t *__buf)
 /* NB: No hidden proto for __pthread_unwind_next: inside glibc, the
    legacy unwinding mechanism is used.  */
 
-#if IS_IN (libpthread)
 extern void __pthread_register_cancel (__pthread_unwind_buf_t *__buf)
      __cleanup_fct_attribute;
+libc_hidden_proto (__pthread_register_cancel)
 extern void __pthread_unregister_cancel (__pthread_unwind_buf_t *__buf)
      __cleanup_fct_attribute;
-hidden_proto (__pthread_register_cancel)
-hidden_proto (__pthread_unregister_cancel)
-# ifdef SHARED
-/* The difference from __libc_unwind_link_get is that here, errors
-   terminate the process.  */
-struct unwind_link ;
-struct unwind_link *__pthread_unwind_link_get (void) attribute_hidden;
-# endif
-#endif
-
+libc_hidden_proto (__pthread_unregister_cancel)
 
 /* Called when a thread reacts on a cancellation request.  */
 static inline void
diff --git a/sysdeps/unix/sysv/linux/aarch64/libc.abilist b/sysdeps/unix/sysv/linux/aarch64/libc.abilist
index 2d06bfef34..68afc4d209 100644
--- a/sysdeps/unix/sysv/linux/aarch64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/aarch64/libc.abilist
@@ -350,6 +350,7 @@  GLIBC_2.17 __pthread_mutexattr_destroy F
 GLIBC_2.17 __pthread_mutexattr_init F
 GLIBC_2.17 __pthread_mutexattr_settype F
 GLIBC_2.17 __pthread_once F
+GLIBC_2.17 __pthread_register_cancel F
 GLIBC_2.17 __pthread_rwlock_destroy F
 GLIBC_2.17 __pthread_rwlock_init F
 GLIBC_2.17 __pthread_rwlock_rdlock F
@@ -358,6 +359,7 @@  GLIBC_2.17 __pthread_rwlock_trywrlock F
 GLIBC_2.17 __pthread_rwlock_unlock F
 GLIBC_2.17 __pthread_rwlock_wrlock F
 GLIBC_2.17 __pthread_setspecific F
+GLIBC_2.17 __pthread_unregister_cancel F
 GLIBC_2.17 __pthread_unwind_next F
 GLIBC_2.17 __ptsname_r_chk F
 GLIBC_2.17 __pwrite64 F
@@ -2305,6 +2307,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist
index 2b21af13ad..633df92b7c 100644
--- a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist
@@ -1,7 +1,5 @@ 
 GLIBC_2.17 __errno_location F
-GLIBC_2.17 __pthread_register_cancel F
 GLIBC_2.17 __pthread_register_cancel_defer F
-GLIBC_2.17 __pthread_unregister_cancel F
 GLIBC_2.17 __pthread_unregister_cancel_restore F
 GLIBC_2.17 pthread_attr_getaffinity_np F
 GLIBC_2.17 pthread_attr_getguardsize F
diff --git a/sysdeps/unix/sysv/linux/alpha/libc.abilist b/sysdeps/unix/sysv/linux/alpha/libc.abilist
index 8f1c1368ad..0eee74431c 100644
--- a/sysdeps/unix/sysv/linux/alpha/libc.abilist
+++ b/sysdeps/unix/sysv/linux/alpha/libc.abilist
@@ -2268,6 +2268,8 @@  GLIBC_2.3.2 pthread_cond_timedwait F
 GLIBC_2.3.2 pthread_cond_wait F
 GLIBC_2.3.2 strptime_l F
 GLIBC_2.3.3 __pthread_cleanup_routine F
+GLIBC_2.3.3 __pthread_register_cancel F
+GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unwind_next F
 GLIBC_2.3.3 _sys_siglist D 0x208
 GLIBC_2.3.3 gnu_dev_major F
@@ -2392,6 +2394,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist
index 56ac3b7e71..fa996f19d7 100644
--- a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist
@@ -23,9 +23,7 @@  GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
 GLIBC_2.28 thrd_create F
 GLIBC_2.3.2 __libpthread_version_placeholder F
-GLIBC_2.3.3 __pthread_register_cancel F
 GLIBC_2.3.3 __pthread_register_cancel_defer F
-GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unregister_cancel_restore F
 GLIBC_2.3.3 pthread_attr_getaffinity_np F
 GLIBC_2.3.3 pthread_attr_setstack F
diff --git a/sysdeps/unix/sysv/linux/arc/libc.abilist b/sysdeps/unix/sysv/linux/arc/libc.abilist
index ae902ecdd0..3caf14215d 100644
--- a/sysdeps/unix/sysv/linux/arc/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arc/libc.abilist
@@ -339,6 +339,7 @@  GLIBC_2.32 __pthread_mutexattr_destroy F
 GLIBC_2.32 __pthread_mutexattr_init F
 GLIBC_2.32 __pthread_mutexattr_settype F
 GLIBC_2.32 __pthread_once F
+GLIBC_2.32 __pthread_register_cancel F
 GLIBC_2.32 __pthread_rwlock_destroy F
 GLIBC_2.32 __pthread_rwlock_init F
 GLIBC_2.32 __pthread_rwlock_rdlock F
@@ -347,6 +348,7 @@  GLIBC_2.32 __pthread_rwlock_trywrlock F
 GLIBC_2.32 __pthread_rwlock_unlock F
 GLIBC_2.32 __pthread_rwlock_wrlock F
 GLIBC_2.32 __pthread_setspecific F
+GLIBC_2.32 __pthread_unregister_cancel F
 GLIBC_2.32 __pthread_unwind_next F
 GLIBC_2.32 __ptsname_r_chk F
 GLIBC_2.32 __pwrite64 F
@@ -2064,6 +2066,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/arc/libpthread.abilist b/sysdeps/unix/sysv/linux/arc/libpthread.abilist
index 7a8ca30604..93f0474e31 100644
--- a/sysdeps/unix/sysv/linux/arc/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/arc/libpthread.abilist
@@ -1,7 +1,5 @@ 
 GLIBC_2.32 __errno_location F
-GLIBC_2.32 __pthread_register_cancel F
 GLIBC_2.32 __pthread_register_cancel_defer F
-GLIBC_2.32 __pthread_unregister_cancel F
 GLIBC_2.32 __pthread_unregister_cancel_restore F
 GLIBC_2.32 pthread_attr_getaffinity_np F
 GLIBC_2.32 pthread_attr_getguardsize F
diff --git a/sysdeps/unix/sysv/linux/arm/be/libc.abilist b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
index acc620643f..1cf65ff0c7 100644
--- a/sysdeps/unix/sysv/linux/arm/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
@@ -190,6 +190,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
@@ -627,6 +629,7 @@  GLIBC_2.4 __pthread_mutexattr_destroy F
 GLIBC_2.4 __pthread_mutexattr_init F
 GLIBC_2.4 __pthread_mutexattr_settype F
 GLIBC_2.4 __pthread_once F
+GLIBC_2.4 __pthread_register_cancel F
 GLIBC_2.4 __pthread_rwlock_destroy F
 GLIBC_2.4 __pthread_rwlock_init F
 GLIBC_2.4 __pthread_rwlock_rdlock F
@@ -635,6 +638,7 @@  GLIBC_2.4 __pthread_rwlock_trywrlock F
 GLIBC_2.4 __pthread_rwlock_unlock F
 GLIBC_2.4 __pthread_rwlock_wrlock F
 GLIBC_2.4 __pthread_setspecific F
+GLIBC_2.4 __pthread_unregister_cancel F
 GLIBC_2.4 __pthread_unwind_next F
 GLIBC_2.4 __ptsname_r_chk F
 GLIBC_2.4 __pwrite64 F
diff --git a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist
index d629cc23e7..fcf9bae888 100644
--- a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist
@@ -7,9 +7,7 @@  GLIBC_2.30 __libpthread_version_placeholder F
 GLIBC_2.31 __libpthread_version_placeholder F
 GLIBC_2.4 __errno_location F
 GLIBC_2.4 __libpthread_version_placeholder F
-GLIBC_2.4 __pthread_register_cancel F
 GLIBC_2.4 __pthread_register_cancel_defer F
-GLIBC_2.4 __pthread_unregister_cancel F
 GLIBC_2.4 __pthread_unregister_cancel_restore F
 GLIBC_2.4 pthread_attr_getaffinity_np F
 GLIBC_2.4 pthread_attr_getguardsize F
diff --git a/sysdeps/unix/sysv/linux/arm/le/libc.abilist b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
index fd33a2317f..26428e0030 100644
--- a/sysdeps/unix/sysv/linux/arm/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
@@ -187,6 +187,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
@@ -624,6 +626,7 @@  GLIBC_2.4 __pthread_mutexattr_destroy F
 GLIBC_2.4 __pthread_mutexattr_init F
 GLIBC_2.4 __pthread_mutexattr_settype F
 GLIBC_2.4 __pthread_once F
+GLIBC_2.4 __pthread_register_cancel F
 GLIBC_2.4 __pthread_rwlock_destroy F
 GLIBC_2.4 __pthread_rwlock_init F
 GLIBC_2.4 __pthread_rwlock_rdlock F
@@ -632,6 +635,7 @@  GLIBC_2.4 __pthread_rwlock_trywrlock F
 GLIBC_2.4 __pthread_rwlock_unlock F
 GLIBC_2.4 __pthread_rwlock_wrlock F
 GLIBC_2.4 __pthread_setspecific F
+GLIBC_2.4 __pthread_unregister_cancel F
 GLIBC_2.4 __pthread_unwind_next F
 GLIBC_2.4 __ptsname_r_chk F
 GLIBC_2.4 __pwrite64 F
diff --git a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist
index d629cc23e7..fcf9bae888 100644
--- a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist
@@ -7,9 +7,7 @@  GLIBC_2.30 __libpthread_version_placeholder F
 GLIBC_2.31 __libpthread_version_placeholder F
 GLIBC_2.4 __errno_location F
 GLIBC_2.4 __libpthread_version_placeholder F
-GLIBC_2.4 __pthread_register_cancel F
 GLIBC_2.4 __pthread_register_cancel_defer F
-GLIBC_2.4 __pthread_unregister_cancel F
 GLIBC_2.4 __pthread_unregister_cancel_restore F
 GLIBC_2.4 pthread_attr_getaffinity_np F
 GLIBC_2.4 pthread_attr_getguardsize F
diff --git a/sysdeps/unix/sysv/linux/csky/libc.abilist b/sysdeps/unix/sysv/linux/csky/libc.abilist
index c1ac24c3a2..ae01f32a0c 100644
--- a/sysdeps/unix/sysv/linux/csky/libc.abilist
+++ b/sysdeps/unix/sysv/linux/csky/libc.abilist
@@ -343,6 +343,7 @@  GLIBC_2.29 __pthread_mutexattr_destroy F
 GLIBC_2.29 __pthread_mutexattr_init F
 GLIBC_2.29 __pthread_mutexattr_settype F
 GLIBC_2.29 __pthread_once F
+GLIBC_2.29 __pthread_register_cancel F
 GLIBC_2.29 __pthread_rwlock_destroy F
 GLIBC_2.29 __pthread_rwlock_init F
 GLIBC_2.29 __pthread_rwlock_rdlock F
@@ -351,6 +352,7 @@  GLIBC_2.29 __pthread_rwlock_trywrlock F
 GLIBC_2.29 __pthread_rwlock_unlock F
 GLIBC_2.29 __pthread_rwlock_wrlock F
 GLIBC_2.29 __pthread_setspecific F
+GLIBC_2.29 __pthread_unregister_cancel F
 GLIBC_2.29 __pthread_unwind_next F
 GLIBC_2.29 __ptsname_r_chk F
 GLIBC_2.29 __pwrite64 F
@@ -2248,6 +2250,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/csky/libpthread.abilist b/sysdeps/unix/sysv/linux/csky/libpthread.abilist
index 4fc96fb0d8..df027689e8 100644
--- a/sysdeps/unix/sysv/linux/csky/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/csky/libpthread.abilist
@@ -1,7 +1,5 @@ 
 GLIBC_2.29 __errno_location F
-GLIBC_2.29 __pthread_register_cancel F
 GLIBC_2.29 __pthread_register_cancel_defer F
-GLIBC_2.29 __pthread_unregister_cancel F
 GLIBC_2.29 __pthread_unregister_cancel_restore F
 GLIBC_2.29 pthread_attr_getaffinity_np F
 GLIBC_2.29 pthread_attr_getguardsize F
diff --git a/sysdeps/unix/sysv/linux/hppa/libc.abilist b/sysdeps/unix/sysv/linux/hppa/libc.abilist
index 29225ac912..166af94540 100644
--- a/sysdeps/unix/sysv/linux/hppa/libc.abilist
+++ b/sysdeps/unix/sysv/linux/hppa/libc.abilist
@@ -2103,6 +2103,8 @@  GLIBC_2.3.2 pthread_cond_timedwait F
 GLIBC_2.3.2 pthread_cond_wait F
 GLIBC_2.3.2 strptime_l F
 GLIBC_2.3.3 __pthread_cleanup_routine F
+GLIBC_2.3.3 __pthread_register_cancel F
+GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unwind_next F
 GLIBC_2.3.3 _sys_siglist D 0x104
 GLIBC_2.3.3 gnu_dev_major F
@@ -2199,6 +2201,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist
index 77bf2e186d..071fd3e5eb 100644
--- a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist
@@ -20,9 +20,7 @@  GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
 GLIBC_2.28 thrd_create F
 GLIBC_2.3.2 __libpthread_version_placeholder F
-GLIBC_2.3.3 __pthread_register_cancel F
 GLIBC_2.3.3 __pthread_register_cancel_defer F
-GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unregister_cancel_restore F
 GLIBC_2.3.3 pthread_attr_getaffinity_np F
 GLIBC_2.3.3 pthread_setaffinity_np F
diff --git a/sysdeps/unix/sysv/linux/i386/libc.abilist b/sysdeps/unix/sysv/linux/i386/libc.abilist
index b5026ba906..37b5718e49 100644
--- a/sysdeps/unix/sysv/linux/i386/libc.abilist
+++ b/sysdeps/unix/sysv/linux/i386/libc.abilist
@@ -2283,6 +2283,8 @@  GLIBC_2.3.2 pthread_cond_timedwait F
 GLIBC_2.3.2 pthread_cond_wait F
 GLIBC_2.3.2 strptime_l F
 GLIBC_2.3.3 __pthread_cleanup_routine F
+GLIBC_2.3.3 __pthread_register_cancel F
+GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unwind_next F
 GLIBC_2.3.3 _sys_siglist D 0x104
 GLIBC_2.3.3 gnu_dev_major F
@@ -2382,6 +2384,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/i386/libpthread.abilist b/sysdeps/unix/sysv/linux/i386/libpthread.abilist
index 6c36475ccb..a67cc86dcd 100644
--- a/sysdeps/unix/sysv/linux/i386/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/i386/libpthread.abilist
@@ -23,9 +23,7 @@  GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
 GLIBC_2.28 thrd_create F
 GLIBC_2.3.2 __libpthread_version_placeholder F
-GLIBC_2.3.3 __pthread_register_cancel F
 GLIBC_2.3.3 __pthread_register_cancel_defer F
-GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unregister_cancel_restore F
 GLIBC_2.3.3 pthread_attr_getaffinity_np F
 GLIBC_2.3.3 pthread_setaffinity_np F
diff --git a/sysdeps/unix/sysv/linux/ia64/libc.abilist b/sysdeps/unix/sysv/linux/ia64/libc.abilist
index f6fc393a21..2273cff802 100644
--- a/sysdeps/unix/sysv/linux/ia64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/ia64/libc.abilist
@@ -2136,6 +2136,8 @@  GLIBC_2.3.2 pthread_cond_timedwait F
 GLIBC_2.3.2 pthread_cond_wait F
 GLIBC_2.3.2 strptime_l F
 GLIBC_2.3.3 __pthread_cleanup_routine F
+GLIBC_2.3.3 __pthread_register_cancel F
+GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unwind_next F
 GLIBC_2.3.3 _sys_siglist D 0x208
 GLIBC_2.3.3 gnu_dev_major F
@@ -2233,6 +2235,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist
index 8db794d53e..2dbc645d17 100644
--- a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist
@@ -20,9 +20,7 @@  GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
 GLIBC_2.28 thrd_create F
 GLIBC_2.3.2 __libpthread_version_placeholder F
-GLIBC_2.3.3 __pthread_register_cancel F
 GLIBC_2.3.3 __pthread_register_cancel_defer F
-GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unregister_cancel_restore F
 GLIBC_2.3.3 pthread_attr_getaffinity_np F
 GLIBC_2.3.3 pthread_attr_setstack F
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
index dfb73924b9..54822cb0ff 100644
--- a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
@@ -191,6 +191,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
@@ -613,6 +615,7 @@  GLIBC_2.4 __pthread_mutexattr_destroy F
 GLIBC_2.4 __pthread_mutexattr_init F
 GLIBC_2.4 __pthread_mutexattr_settype F
 GLIBC_2.4 __pthread_once F
+GLIBC_2.4 __pthread_register_cancel F
 GLIBC_2.4 __pthread_rwlock_destroy F
 GLIBC_2.4 __pthread_rwlock_init F
 GLIBC_2.4 __pthread_rwlock_rdlock F
@@ -621,6 +624,7 @@  GLIBC_2.4 __pthread_rwlock_trywrlock F
 GLIBC_2.4 __pthread_rwlock_unlock F
 GLIBC_2.4 __pthread_rwlock_wrlock F
 GLIBC_2.4 __pthread_setspecific F
+GLIBC_2.4 __pthread_unregister_cancel F
 GLIBC_2.4 __pthread_unwind_next F
 GLIBC_2.4 __ptsname_r_chk F
 GLIBC_2.4 __pwrite64 F
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
index d629cc23e7..fcf9bae888 100644
--- a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
@@ -7,9 +7,7 @@  GLIBC_2.30 __libpthread_version_placeholder F
 GLIBC_2.31 __libpthread_version_placeholder F
 GLIBC_2.4 __errno_location F
 GLIBC_2.4 __libpthread_version_placeholder F
-GLIBC_2.4 __pthread_register_cancel F
 GLIBC_2.4 __pthread_register_cancel_defer F
-GLIBC_2.4 __pthread_unregister_cancel F
 GLIBC_2.4 __pthread_unregister_cancel_restore F
 GLIBC_2.4 pthread_attr_getaffinity_np F
 GLIBC_2.4 pthread_attr_getguardsize F
diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
index 1a88ecbca4..78676b83eb 100644
--- a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
@@ -2226,6 +2226,8 @@  GLIBC_2.3.2 pthread_cond_timedwait F
 GLIBC_2.3.2 pthread_cond_wait F
 GLIBC_2.3.2 strptime_l F
 GLIBC_2.3.3 __pthread_cleanup_routine F
+GLIBC_2.3.3 __pthread_register_cancel F
+GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unwind_next F
 GLIBC_2.3.3 _sys_siglist D 0x104
 GLIBC_2.3.3 gnu_dev_major F
@@ -2325,6 +2327,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
index 6c36475ccb..a67cc86dcd 100644
--- a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
@@ -23,9 +23,7 @@  GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
 GLIBC_2.28 thrd_create F
 GLIBC_2.3.2 __libpthread_version_placeholder F
-GLIBC_2.3.3 __pthread_register_cancel F
 GLIBC_2.3.3 __pthread_register_cancel_defer F
-GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unregister_cancel_restore F
 GLIBC_2.3.3 pthread_attr_getaffinity_np F
 GLIBC_2.3.3 pthread_setaffinity_np F
diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
index f07dba5ef0..ddc36aaa80 100644
--- a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
@@ -351,6 +351,7 @@  GLIBC_2.18 __pthread_mutexattr_destroy F
 GLIBC_2.18 __pthread_mutexattr_init F
 GLIBC_2.18 __pthread_mutexattr_settype F
 GLIBC_2.18 __pthread_once F
+GLIBC_2.18 __pthread_register_cancel F
 GLIBC_2.18 __pthread_rwlock_destroy F
 GLIBC_2.18 __pthread_rwlock_init F
 GLIBC_2.18 __pthread_rwlock_rdlock F
@@ -359,6 +360,7 @@  GLIBC_2.18 __pthread_rwlock_trywrlock F
 GLIBC_2.18 __pthread_rwlock_unlock F
 GLIBC_2.18 __pthread_rwlock_wrlock F
 GLIBC_2.18 __pthread_setspecific F
+GLIBC_2.18 __pthread_unregister_cancel F
 GLIBC_2.18 __pthread_unwind_next F
 GLIBC_2.18 __ptsname_r_chk F
 GLIBC_2.18 __pwrite64 F
@@ -2299,6 +2301,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist
index 64fff0e0e0..f3a5b67d41 100644
--- a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist
@@ -1,7 +1,5 @@ 
 GLIBC_2.18 __errno_location F
-GLIBC_2.18 __pthread_register_cancel F
 GLIBC_2.18 __pthread_register_cancel_defer F
-GLIBC_2.18 __pthread_unregister_cancel F
 GLIBC_2.18 __pthread_unregister_cancel_restore F
 GLIBC_2.18 pthread_attr_getaffinity_np F
 GLIBC_2.18 pthread_attr_getguardsize F
diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
index 688de4ee35..410cf82c0e 100644
--- a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
@@ -351,6 +351,7 @@  GLIBC_2.18 __pthread_mutexattr_destroy F
 GLIBC_2.18 __pthread_mutexattr_init F
 GLIBC_2.18 __pthread_mutexattr_settype F
 GLIBC_2.18 __pthread_once F
+GLIBC_2.18 __pthread_register_cancel F
 GLIBC_2.18 __pthread_rwlock_destroy F
 GLIBC_2.18 __pthread_rwlock_init F
 GLIBC_2.18 __pthread_rwlock_rdlock F
@@ -359,6 +360,7 @@  GLIBC_2.18 __pthread_rwlock_trywrlock F
 GLIBC_2.18 __pthread_rwlock_unlock F
 GLIBC_2.18 __pthread_rwlock_wrlock F
 GLIBC_2.18 __pthread_setspecific F
+GLIBC_2.18 __pthread_unregister_cancel F
 GLIBC_2.18 __pthread_unwind_next F
 GLIBC_2.18 __ptsname_r_chk F
 GLIBC_2.18 __pwrite64 F
@@ -2296,6 +2298,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist
index 64fff0e0e0..f3a5b67d41 100644
--- a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist
@@ -1,7 +1,5 @@ 
 GLIBC_2.18 __errno_location F
-GLIBC_2.18 __pthread_register_cancel F
 GLIBC_2.18 __pthread_register_cancel_defer F
-GLIBC_2.18 __pthread_unregister_cancel F
 GLIBC_2.18 __pthread_unregister_cancel_restore F
 GLIBC_2.18 pthread_attr_getaffinity_np F
 GLIBC_2.18 pthread_attr_getguardsize F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
index 7e82eadb1d..9a2b97b6e2 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
@@ -2192,6 +2192,8 @@  GLIBC_2.3.2 pthread_cond_timedwait F
 GLIBC_2.3.2 pthread_cond_wait F
 GLIBC_2.3.2 strptime_l F
 GLIBC_2.3.3 __pthread_cleanup_routine F
+GLIBC_2.3.3 __pthread_register_cancel F
+GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unwind_next F
 GLIBC_2.3.3 _sys_siglist D 0x200
 GLIBC_2.3.3 gnu_dev_major F
@@ -2288,6 +2290,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
index 8a95354f94..26ae04300c 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
@@ -21,9 +21,7 @@  GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
 GLIBC_2.28 thrd_create F
 GLIBC_2.3.2 __libpthread_version_placeholder F
-GLIBC_2.3.3 __pthread_register_cancel F
 GLIBC_2.3.3 __pthread_register_cancel_defer F
-GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unregister_cancel_restore F
 GLIBC_2.3.3 pthread_attr_getaffinity_np F
 GLIBC_2.3.3 pthread_attr_setstack F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
index 5891b9b563..e73613e7d7 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
@@ -2190,6 +2190,8 @@  GLIBC_2.3.2 pthread_cond_timedwait F
 GLIBC_2.3.2 pthread_cond_wait F
 GLIBC_2.3.2 strptime_l F
 GLIBC_2.3.3 __pthread_cleanup_routine F
+GLIBC_2.3.3 __pthread_register_cancel F
+GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unwind_next F
 GLIBC_2.3.3 _sys_siglist D 0x200
 GLIBC_2.3.3 gnu_dev_major F
@@ -2286,6 +2288,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
index 8a95354f94..26ae04300c 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
@@ -21,9 +21,7 @@  GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
 GLIBC_2.28 thrd_create F
 GLIBC_2.3.2 __libpthread_version_placeholder F
-GLIBC_2.3.3 __pthread_register_cancel F
 GLIBC_2.3.3 __pthread_register_cancel_defer F
-GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unregister_cancel_restore F
 GLIBC_2.3.3 pthread_attr_getaffinity_np F
 GLIBC_2.3.3 pthread_attr_setstack F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
index dbf9dcf588..7512fb6e4e 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
@@ -2198,6 +2198,8 @@  GLIBC_2.3.2 pthread_cond_timedwait F
 GLIBC_2.3.2 pthread_cond_wait F
 GLIBC_2.3.2 strptime_l F
 GLIBC_2.3.3 __pthread_cleanup_routine F
+GLIBC_2.3.3 __pthread_register_cancel F
+GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unwind_next F
 GLIBC_2.3.3 _sys_siglist D 0x200
 GLIBC_2.3.3 gnu_dev_major F
@@ -2294,6 +2296,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
index ed31156fe5..41578b8c93 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
@@ -2191,6 +2191,8 @@  GLIBC_2.3.2 pthread_cond_timedwait F
 GLIBC_2.3.2 pthread_cond_wait F
 GLIBC_2.3.2 strptime_l F
 GLIBC_2.3.3 __pthread_cleanup_routine F
+GLIBC_2.3.3 __pthread_register_cancel F
+GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unwind_next F
 GLIBC_2.3.3 _sys_siglist D 0x400
 GLIBC_2.3.3 gnu_dev_major F
@@ -2288,6 +2290,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/nios2/libc.abilist b/sysdeps/unix/sysv/linux/nios2/libc.abilist
index bca4034be2..34fff4c240 100644
--- a/sysdeps/unix/sysv/linux/nios2/libc.abilist
+++ b/sysdeps/unix/sysv/linux/nios2/libc.abilist
@@ -388,6 +388,7 @@  GLIBC_2.21 __pthread_mutexattr_destroy F
 GLIBC_2.21 __pthread_mutexattr_init F
 GLIBC_2.21 __pthread_mutexattr_settype F
 GLIBC_2.21 __pthread_once F
+GLIBC_2.21 __pthread_register_cancel F
 GLIBC_2.21 __pthread_rwlock_destroy F
 GLIBC_2.21 __pthread_rwlock_init F
 GLIBC_2.21 __pthread_rwlock_rdlock F
@@ -396,6 +397,7 @@  GLIBC_2.21 __pthread_rwlock_trywrlock F
 GLIBC_2.21 __pthread_rwlock_unlock F
 GLIBC_2.21 __pthread_rwlock_wrlock F
 GLIBC_2.21 __pthread_setspecific F
+GLIBC_2.21 __pthread_unregister_cancel F
 GLIBC_2.21 __pthread_unwind_next F
 GLIBC_2.21 __ptsname_r_chk F
 GLIBC_2.21 __pwrite64 F
@@ -2338,6 +2340,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist
index 4dec581eb6..9bee776f4f 100644
--- a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist
@@ -1,7 +1,5 @@ 
 GLIBC_2.21 __errno_location F
-GLIBC_2.21 __pthread_register_cancel F
 GLIBC_2.21 __pthread_register_cancel_defer F
-GLIBC_2.21 __pthread_unregister_cancel F
 GLIBC_2.21 __pthread_unregister_cancel_restore F
 GLIBC_2.21 pthread_attr_getaffinity_np F
 GLIBC_2.21 pthread_attr_getguardsize F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
index 5de9636022..8b8adc06ce 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
@@ -2230,6 +2230,8 @@  GLIBC_2.3.2 pthread_cond_timedwait F
 GLIBC_2.3.2 pthread_cond_wait F
 GLIBC_2.3.2 strptime_l F
 GLIBC_2.3.3 __pthread_cleanup_routine F
+GLIBC_2.3.3 __pthread_register_cancel F
+GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unwind_next F
 GLIBC_2.3.3 _sys_siglist D 0x104
 GLIBC_2.3.3 getcontext F
@@ -2352,6 +2354,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
index cf9b765b38..a30be35a7a 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
@@ -23,9 +23,7 @@  GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
 GLIBC_2.28 thrd_create F
 GLIBC_2.3.2 __libpthread_version_placeholder F
-GLIBC_2.3.3 __pthread_register_cancel F
 GLIBC_2.3.3 __pthread_register_cancel_defer F
-GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unregister_cancel_restore F
 GLIBC_2.3.3 pthread_attr_getaffinity_np F
 GLIBC_2.3.3 pthread_setaffinity_np F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
index 10cb492163..5754fd3589 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
@@ -2263,6 +2263,8 @@  GLIBC_2.3.2 pthread_cond_timedwait F
 GLIBC_2.3.2 pthread_cond_wait F
 GLIBC_2.3.2 strptime_l F
 GLIBC_2.3.3 __pthread_cleanup_routine F
+GLIBC_2.3.3 __pthread_register_cancel F
+GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unwind_next F
 GLIBC_2.3.3 _sys_siglist D 0x104
 GLIBC_2.3.3 getcontext F
@@ -2385,6 +2387,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
index 4d72e24c22..47812d2be1 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
@@ -2083,6 +2083,8 @@  GLIBC_2.3.2 pthread_cond_timedwait F
 GLIBC_2.3.2 pthread_cond_wait F
 GLIBC_2.3.2 strptime_l F
 GLIBC_2.3.3 __pthread_cleanup_routine F
+GLIBC_2.3.3 __pthread_register_cancel F
+GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unwind_next F
 GLIBC_2.3.3 _sys_siglist D 0x208
 GLIBC_2.3.3 gnu_dev_major F
@@ -2200,6 +2202,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
index 66f04c69a2..5129d976a1 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
@@ -18,9 +18,7 @@  GLIBC_2.3 pthread_getconcurrency F
 GLIBC_2.3 pthread_getcpuclockid F
 GLIBC_2.3 pthread_setconcurrency F
 GLIBC_2.3.2 __libpthread_version_placeholder F
-GLIBC_2.3.3 __pthread_register_cancel F
 GLIBC_2.3.3 __pthread_register_cancel_defer F
-GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unregister_cancel_restore F
 GLIBC_2.3.3 pthread_attr_getaffinity_np F
 GLIBC_2.3.3 pthread_setaffinity_np F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
index d3ac4aeefc..9af9e3fba6 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
@@ -436,6 +436,7 @@  GLIBC_2.17 __pthread_mutexattr_destroy F
 GLIBC_2.17 __pthread_mutexattr_init F
 GLIBC_2.17 __pthread_mutexattr_settype F
 GLIBC_2.17 __pthread_once F
+GLIBC_2.17 __pthread_register_cancel F
 GLIBC_2.17 __pthread_rwlock_destroy F
 GLIBC_2.17 __pthread_rwlock_init F
 GLIBC_2.17 __pthread_rwlock_rdlock F
@@ -444,6 +445,7 @@  GLIBC_2.17 __pthread_rwlock_trywrlock F
 GLIBC_2.17 __pthread_rwlock_unlock F
 GLIBC_2.17 __pthread_rwlock_wrlock F
 GLIBC_2.17 __pthread_setspecific F
+GLIBC_2.17 __pthread_unregister_cancel F
 GLIBC_2.17 __pthread_unwind_next F
 GLIBC_2.17 __ptsname_r_chk F
 GLIBC_2.17 __pwrite64 F
@@ -2501,6 +2503,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
index 2b21af13ad..633df92b7c 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
@@ -1,7 +1,5 @@ 
 GLIBC_2.17 __errno_location F
-GLIBC_2.17 __pthread_register_cancel F
 GLIBC_2.17 __pthread_register_cancel_defer F
-GLIBC_2.17 __pthread_unregister_cancel F
 GLIBC_2.17 __pthread_unregister_cancel_restore F
 GLIBC_2.17 pthread_attr_getaffinity_np F
 GLIBC_2.17 pthread_attr_getguardsize F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
index dcef189dcc..ce2057f817 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
@@ -336,6 +336,7 @@  GLIBC_2.33 __pthread_mutexattr_destroy F
 GLIBC_2.33 __pthread_mutexattr_init F
 GLIBC_2.33 __pthread_mutexattr_settype F
 GLIBC_2.33 __pthread_once F
+GLIBC_2.33 __pthread_register_cancel F
 GLIBC_2.33 __pthread_rwlock_destroy F
 GLIBC_2.33 __pthread_rwlock_init F
 GLIBC_2.33 __pthread_rwlock_rdlock F
@@ -344,6 +345,7 @@  GLIBC_2.33 __pthread_rwlock_trywrlock F
 GLIBC_2.33 __pthread_rwlock_unlock F
 GLIBC_2.33 __pthread_rwlock_wrlock F
 GLIBC_2.33 __pthread_setspecific F
+GLIBC_2.33 __pthread_unregister_cancel F
 GLIBC_2.33 __pthread_unwind_next F
 GLIBC_2.33 __ptsname_r_chk F
 GLIBC_2.33 __pwrite64 F
@@ -2066,6 +2068,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist
index ccfa97c0e5..a1b36b3b46 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist
@@ -1,7 +1,5 @@ 
 GLIBC_2.33 __errno_location F
-GLIBC_2.33 __pthread_register_cancel F
 GLIBC_2.33 __pthread_register_cancel_defer F
-GLIBC_2.33 __pthread_unregister_cancel F
 GLIBC_2.33 __pthread_unregister_cancel_restore F
 GLIBC_2.33 pthread_attr_getaffinity_np F
 GLIBC_2.33 pthread_attr_getguardsize F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
index 806d787b3f..e5ea5fd6e0 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
@@ -347,6 +347,7 @@  GLIBC_2.27 __pthread_mutexattr_destroy F
 GLIBC_2.27 __pthread_mutexattr_init F
 GLIBC_2.27 __pthread_mutexattr_settype F
 GLIBC_2.27 __pthread_once F
+GLIBC_2.27 __pthread_register_cancel F
 GLIBC_2.27 __pthread_rwlock_destroy F
 GLIBC_2.27 __pthread_rwlock_init F
 GLIBC_2.27 __pthread_rwlock_rdlock F
@@ -355,6 +356,7 @@  GLIBC_2.27 __pthread_rwlock_trywrlock F
 GLIBC_2.27 __pthread_rwlock_unlock F
 GLIBC_2.27 __pthread_rwlock_wrlock F
 GLIBC_2.27 __pthread_setspecific F
+GLIBC_2.27 __pthread_unregister_cancel F
 GLIBC_2.27 __pthread_unwind_next F
 GLIBC_2.27 __ptsname_r_chk F
 GLIBC_2.27 __pwrite64 F
@@ -2266,6 +2268,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
index dbb1a42922..e8dc7c3910 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
@@ -1,7 +1,5 @@ 
 GLIBC_2.27 __errno_location F
-GLIBC_2.27 __pthread_register_cancel F
 GLIBC_2.27 __pthread_register_cancel_defer F
-GLIBC_2.27 __pthread_unregister_cancel F
 GLIBC_2.27 __pthread_unregister_cancel_restore F
 GLIBC_2.27 pthread_attr_getaffinity_np F
 GLIBC_2.27 pthread_attr_getguardsize F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
index 52f3cc5a97..fbb75ccf9d 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
@@ -2239,6 +2239,8 @@  GLIBC_2.3.2 pthread_cond_timedwait F
 GLIBC_2.3.2 pthread_cond_wait F
 GLIBC_2.3.2 strptime_l F
 GLIBC_2.3.3 __pthread_cleanup_routine F
+GLIBC_2.3.3 __pthread_register_cancel F
+GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unwind_next F
 GLIBC_2.3.3 _sys_siglist D 0x104
 GLIBC_2.3.3 gnu_dev_major F
@@ -2350,6 +2352,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
index caeaf1c3c8..f5deee544b 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
@@ -24,9 +24,7 @@  GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
 GLIBC_2.28 thrd_create F
 GLIBC_2.3.2 __libpthread_version_placeholder F
-GLIBC_2.3.3 __pthread_register_cancel F
 GLIBC_2.3.3 __pthread_register_cancel_defer F
-GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unregister_cancel_restore F
 GLIBC_2.3.3 pthread_attr_getaffinity_np F
 GLIBC_2.3.3 pthread_setaffinity_np F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
index 96dcf91860..7c1e46cdf0 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
@@ -2129,6 +2129,8 @@  GLIBC_2.3.2 pthread_cond_timedwait F
 GLIBC_2.3.2 pthread_cond_wait F
 GLIBC_2.3.2 strptime_l F
 GLIBC_2.3.3 __pthread_cleanup_routine F
+GLIBC_2.3.3 __pthread_register_cancel F
+GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unwind_next F
 GLIBC_2.3.3 _sys_siglist D 0x208
 GLIBC_2.3.3 gnu_dev_major F
@@ -2237,6 +2239,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
index 396dff1d9f..9fdcccffb0 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
@@ -21,9 +21,7 @@  GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
 GLIBC_2.28 thrd_create F
 GLIBC_2.3.2 __libpthread_version_placeholder F
-GLIBC_2.3.3 __pthread_register_cancel F
 GLIBC_2.3.3 __pthread_register_cancel_defer F
-GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unregister_cancel_restore F
 GLIBC_2.3.3 pthread_attr_getaffinity_np F
 GLIBC_2.3.3 pthread_setaffinity_np F
diff --git a/sysdeps/unix/sysv/linux/sh/be/libc.abilist b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
index 0360f65963..bfa7943954 100644
--- a/sysdeps/unix/sysv/linux/sh/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
@@ -2107,6 +2107,8 @@  GLIBC_2.3.2 pthread_cond_timedwait F
 GLIBC_2.3.2 pthread_cond_wait F
 GLIBC_2.3.2 strptime_l F
 GLIBC_2.3.3 __pthread_cleanup_routine F
+GLIBC_2.3.3 __pthread_register_cancel F
+GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unwind_next F
 GLIBC_2.3.3 _sys_siglist D 0x104
 GLIBC_2.3.3 gnu_dev_major F
@@ -2206,6 +2208,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist
index 77bf2e186d..071fd3e5eb 100644
--- a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist
@@ -20,9 +20,7 @@  GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
 GLIBC_2.28 thrd_create F
 GLIBC_2.3.2 __libpthread_version_placeholder F
-GLIBC_2.3.3 __pthread_register_cancel F
 GLIBC_2.3.3 __pthread_register_cancel_defer F
-GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unregister_cancel_restore F
 GLIBC_2.3.3 pthread_attr_getaffinity_np F
 GLIBC_2.3.3 pthread_setaffinity_np F
diff --git a/sysdeps/unix/sysv/linux/sh/le/libc.abilist b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
index c99300d9fc..440eed94c8 100644
--- a/sysdeps/unix/sysv/linux/sh/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
@@ -2107,6 +2107,8 @@  GLIBC_2.3.2 pthread_cond_timedwait F
 GLIBC_2.3.2 pthread_cond_wait F
 GLIBC_2.3.2 strptime_l F
 GLIBC_2.3.3 __pthread_cleanup_routine F
+GLIBC_2.3.3 __pthread_register_cancel F
+GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unwind_next F
 GLIBC_2.3.3 _sys_siglist D 0x104
 GLIBC_2.3.3 gnu_dev_major F
@@ -2203,6 +2205,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist
index 77bf2e186d..071fd3e5eb 100644
--- a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist
@@ -20,9 +20,7 @@  GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
 GLIBC_2.28 thrd_create F
 GLIBC_2.3.2 __libpthread_version_placeholder F
-GLIBC_2.3.3 __pthread_register_cancel F
 GLIBC_2.3.3 __pthread_register_cancel_defer F
-GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unregister_cancel_restore F
 GLIBC_2.3.3 pthread_attr_getaffinity_np F
 GLIBC_2.3.3 pthread_setaffinity_np F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
index 1d3f00ec04..2e3f5ec667 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
@@ -2233,6 +2233,8 @@  GLIBC_2.3.2 pthread_cond_timedwait F
 GLIBC_2.3.2 pthread_cond_wait F
 GLIBC_2.3.2 strptime_l F
 GLIBC_2.3.3 __pthread_cleanup_routine F
+GLIBC_2.3.3 __pthread_register_cancel F
+GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unwind_next F
 GLIBC_2.3.3 _sys_siglist D 0x104
 GLIBC_2.3.3 gnu_dev_major F
@@ -2341,6 +2343,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
index 56ac3b7e71..fa996f19d7 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
@@ -23,9 +23,7 @@  GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
 GLIBC_2.28 thrd_create F
 GLIBC_2.3.2 __libpthread_version_placeholder F
-GLIBC_2.3.3 __pthread_register_cancel F
 GLIBC_2.3.3 __pthread_register_cancel_defer F
-GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unregister_cancel_restore F
 GLIBC_2.3.3 pthread_attr_getaffinity_np F
 GLIBC_2.3.3 pthread_attr_setstack F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
index eb222daa74..1a88c40a3a 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
@@ -2158,6 +2158,8 @@  GLIBC_2.3.2 pthread_cond_timedwait F
 GLIBC_2.3.2 pthread_cond_wait F
 GLIBC_2.3.2 strptime_l F
 GLIBC_2.3.3 __pthread_cleanup_routine F
+GLIBC_2.3.3 __pthread_register_cancel F
+GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unwind_next F
 GLIBC_2.3.3 _sys_siglist D 0x208
 GLIBC_2.3.3 gnu_dev_major F
@@ -2254,6 +2256,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
index 8db794d53e..2dbc645d17 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
@@ -20,9 +20,7 @@  GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
 GLIBC_2.28 thrd_create F
 GLIBC_2.3.2 __libpthread_version_placeholder F
-GLIBC_2.3.3 __pthread_register_cancel F
 GLIBC_2.3.3 __pthread_register_cancel_defer F
-GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unregister_cancel_restore F
 GLIBC_2.3.3 pthread_attr_getaffinity_np F
 GLIBC_2.3.3 pthread_attr_setstack F
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
index c34f50d673..c0c3538772 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
@@ -2117,6 +2117,8 @@  GLIBC_2.3.2 pthread_cond_timedwait F
 GLIBC_2.3.2 pthread_cond_wait F
 GLIBC_2.3.2 strptime_l F
 GLIBC_2.3.3 __pthread_cleanup_routine F
+GLIBC_2.3.3 __pthread_register_cancel F
+GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unwind_next F
 GLIBC_2.3.3 _sys_siglist D 0x208
 GLIBC_2.3.3 gnu_dev_major F
@@ -2215,6 +2217,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
index acfc54c409..e835a66869 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
@@ -19,9 +19,7 @@  GLIBC_2.2.5 pthread_setconcurrency F
 GLIBC_2.2.6 __libpthread_version_placeholder F
 GLIBC_2.28 thrd_create F
 GLIBC_2.3.2 __libpthread_version_placeholder F
-GLIBC_2.3.3 __pthread_register_cancel F
 GLIBC_2.3.3 __pthread_register_cancel_defer F
-GLIBC_2.3.3 __pthread_unregister_cancel F
 GLIBC_2.3.3 __pthread_unregister_cancel_restore F
 GLIBC_2.3.3 pthread_attr_getaffinity_np F
 GLIBC_2.3.3 pthread_setaffinity_np F
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
index 4fae69daff..cea07a7812 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
@@ -351,6 +351,7 @@  GLIBC_2.16 __pthread_mutexattr_destroy F
 GLIBC_2.16 __pthread_mutexattr_init F
 GLIBC_2.16 __pthread_mutexattr_settype F
 GLIBC_2.16 __pthread_once F
+GLIBC_2.16 __pthread_register_cancel F
 GLIBC_2.16 __pthread_rwlock_destroy F
 GLIBC_2.16 __pthread_rwlock_init F
 GLIBC_2.16 __pthread_rwlock_rdlock F
@@ -359,6 +360,7 @@  GLIBC_2.16 __pthread_rwlock_trywrlock F
 GLIBC_2.16 __pthread_rwlock_unlock F
 GLIBC_2.16 __pthread_rwlock_wrlock F
 GLIBC_2.16 __pthread_setspecific F
+GLIBC_2.16 __pthread_unregister_cancel F
 GLIBC_2.16 __pthread_unwind_next F
 GLIBC_2.16 __ptsname_r_chk F
 GLIBC_2.16 __pwrite64 F
@@ -2320,6 +2322,8 @@  GLIBC_2.34 __pthread_cleanup_routine F
 GLIBC_2.34 __pthread_key_create F
 GLIBC_2.34 __pthread_mutex_lock F
 GLIBC_2.34 __pthread_mutex_unlock F
+GLIBC_2.34 __pthread_register_cancel F
+GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 call_once F
 GLIBC_2.34 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
index fe8c2eec64..fc978dfbe6 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
@@ -1,7 +1,5 @@ 
 GLIBC_2.16 __errno_location F
-GLIBC_2.16 __pthread_register_cancel F
 GLIBC_2.16 __pthread_register_cancel_defer F
-GLIBC_2.16 __pthread_unregister_cancel F
 GLIBC_2.16 __pthread_unregister_cancel_restore F
 GLIBC_2.16 pthread_attr_getaffinity_np F
 GLIBC_2.16 pthread_attr_getguardsize F