public inbox for libc-alpha@sourceware.org
 help / color / mirror / Atom feed
From: Florian Weimer <fweimer@redhat.com>
To: libc-alpha@sourceware.org
Subject: [PATCH v3 27/37] nptl: Move pthread_key_delete into libc.
Date: Tue, 16 Mar 2021 18:30:59 +0100	[thread overview]
Message-ID: <213b9f1d5300956f7dae7f29c3de212b8537d4b7.1615914632.git.fweimer@redhat.com> (raw)
In-Reply-To: <cover.1615914631.git.fweimer@redhat.com>

The symbol was moved using scripts/move-symbol-to-libc.py.

tss_delete (still in libpthread) uses the __pthread_key_create
alias, so that is now exported under GLIBC_PRIVATE.
---
 nptl/Makefile                                   |  2 +-
 nptl/Versions                                   |  4 +++-
 nptl/pthreadP.h                                 |  1 +
 nptl/pthread_key_delete.c                       | 17 ++++++++++++++---
 sysdeps/unix/sysv/linux/aarch64/libc.abilist    |  2 ++
 .../unix/sysv/linux/aarch64/libpthread.abilist  |  1 -
 sysdeps/unix/sysv/linux/alpha/libc.abilist      |  2 ++
 .../unix/sysv/linux/alpha/libpthread.abilist    |  1 -
 sysdeps/unix/sysv/linux/arc/libc.abilist        |  2 ++
 sysdeps/unix/sysv/linux/arc/libpthread.abilist  |  1 -
 sysdeps/unix/sysv/linux/arm/be/libc.abilist     |  2 ++
 .../unix/sysv/linux/arm/be/libpthread.abilist   |  1 -
 sysdeps/unix/sysv/linux/arm/le/libc.abilist     |  2 ++
 .../unix/sysv/linux/arm/le/libpthread.abilist   |  1 -
 sysdeps/unix/sysv/linux/csky/libc.abilist       |  2 ++
 sysdeps/unix/sysv/linux/csky/libpthread.abilist |  1 -
 sysdeps/unix/sysv/linux/hppa/libc.abilist       |  2 ++
 sysdeps/unix/sysv/linux/hppa/libpthread.abilist |  1 -
 sysdeps/unix/sysv/linux/i386/libc.abilist       |  2 ++
 sysdeps/unix/sysv/linux/i386/libpthread.abilist |  1 -
 sysdeps/unix/sysv/linux/ia64/libc.abilist       |  2 ++
 sysdeps/unix/sysv/linux/ia64/libpthread.abilist |  1 -
 .../unix/sysv/linux/m68k/coldfire/libc.abilist  |  2 ++
 .../sysv/linux/m68k/coldfire/libpthread.abilist |  1 -
 .../unix/sysv/linux/m68k/m680x0/libc.abilist    |  2 ++
 .../sysv/linux/m68k/m680x0/libpthread.abilist   |  1 -
 .../unix/sysv/linux/microblaze/be/libc.abilist  |  2 ++
 .../sysv/linux/microblaze/be/libpthread.abilist |  1 -
 .../unix/sysv/linux/microblaze/le/libc.abilist  |  2 ++
 .../sysv/linux/microblaze/le/libpthread.abilist |  1 -
 .../sysv/linux/mips/mips32/fpu/libc.abilist     |  2 ++
 .../sysv/linux/mips/mips32/libpthread.abilist   |  1 -
 .../sysv/linux/mips/mips32/nofpu/libc.abilist   |  2 ++
 .../sysv/linux/mips/mips64/libpthread.abilist   |  1 -
 .../sysv/linux/mips/mips64/n32/libc.abilist     |  2 ++
 .../sysv/linux/mips/mips64/n64/libc.abilist     |  2 ++
 sysdeps/unix/sysv/linux/nios2/libc.abilist      |  2 ++
 .../unix/sysv/linux/nios2/libpthread.abilist    |  1 -
 .../linux/powerpc/powerpc32/fpu/libc.abilist    |  2 ++
 .../linux/powerpc/powerpc32/libpthread.abilist  |  1 -
 .../linux/powerpc/powerpc32/nofpu/libc.abilist  |  2 ++
 .../linux/powerpc/powerpc64/be/libc.abilist     |  2 ++
 .../powerpc/powerpc64/be/libpthread.abilist     |  1 -
 .../linux/powerpc/powerpc64/le/libc.abilist     |  2 ++
 .../powerpc/powerpc64/le/libpthread.abilist     |  1 -
 sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist |  2 ++
 .../sysv/linux/riscv/rv32/libpthread.abilist    |  1 -
 sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist |  2 ++
 .../sysv/linux/riscv/rv64/libpthread.abilist    |  1 -
 .../unix/sysv/linux/s390/s390-32/libc.abilist   |  2 ++
 .../sysv/linux/s390/s390-32/libpthread.abilist  |  1 -
 .../unix/sysv/linux/s390/s390-64/libc.abilist   |  2 ++
 .../sysv/linux/s390/s390-64/libpthread.abilist  |  1 -
 sysdeps/unix/sysv/linux/sh/be/libc.abilist      |  2 ++
 .../unix/sysv/linux/sh/be/libpthread.abilist    |  1 -
 sysdeps/unix/sysv/linux/sh/le/libc.abilist      |  2 ++
 .../unix/sysv/linux/sh/le/libpthread.abilist    |  1 -
 .../unix/sysv/linux/sparc/sparc32/libc.abilist  |  2 ++
 .../sysv/linux/sparc/sparc32/libpthread.abilist |  1 -
 .../unix/sysv/linux/sparc/sparc64/libc.abilist  |  2 ++
 .../sysv/linux/sparc/sparc64/libpthread.abilist |  1 -
 sysdeps/unix/sysv/linux/x86_64/64/libc.abilist  |  2 ++
 .../sysv/linux/x86_64/64/libpthread.abilist     |  1 -
 sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist |  2 ++
 .../sysv/linux/x86_64/x32/libpthread.abilist    |  1 -
 65 files changed, 83 insertions(+), 34 deletions(-)

diff --git a/nptl/Makefile b/nptl/Makefile
index fa8bcf8c62..5d4276d9f9 100644
--- a/nptl/Makefile
+++ b/nptl/Makefile
@@ -80,6 +80,7 @@ routines = \
   pthread_getschedparam \
   pthread_getspecific \
   pthread_key_create \
+  pthread_key_delete \
   pthread_keys \
   pthread_mutex_consistent \
   pthread_once \
@@ -162,7 +163,6 @@ libpthread-routines = \
   pthread_getname \
   pthread_join \
   pthread_join_common \
-  pthread_key_delete \
   pthread_kill \
   pthread_kill_other_threads \
   pthread_mutex_cond_lock \
diff --git a/nptl/Versions b/nptl/Versions
index 58a37b8816..e93c27b083 100644
--- a/nptl/Versions
+++ b/nptl/Versions
@@ -33,6 +33,7 @@ libc {
     pthread_getschedparam;
     pthread_getspecific;
     pthread_key_create;
+    pthread_key_delete;
     pthread_mutex_destroy;
     pthread_mutex_init;
     pthread_mutex_lock;
@@ -98,6 +99,7 @@ libc {
     __pthread_setspecific;
     pthread_getspecific;
     pthread_key_create;
+    pthread_key_delete;
     pthread_mutex_consistent;
     pthread_once;
     pthread_setspecific;
@@ -134,6 +136,7 @@ libc {
     __pthread_exit;
     __pthread_force_elision;
     __pthread_getattr_default_np;
+    __pthread_key_delete;
     __pthread_keys;
     __pthread_setcancelstate;
     __pthread_unwind;
@@ -188,7 +191,6 @@ libpthread {
     pthread_create;
     pthread_detach;
     pthread_join;
-    pthread_key_delete;
     pthread_kill;
     pthread_kill_other_threads_np;
     pthread_mutex_destroy;
diff --git a/nptl/pthreadP.h b/nptl/pthreadP.h
index c9e845e4a2..515c58039b 100644
--- a/nptl/pthreadP.h
+++ b/nptl/pthreadP.h
@@ -517,6 +517,7 @@ extern int __pthread_condattr_destroy (pthread_condattr_t *attr);
 extern int __pthread_condattr_init (pthread_condattr_t *attr);
 extern int __pthread_key_create (pthread_key_t *key, void (*destr) (void *));
 extern int __pthread_key_delete (pthread_key_t key);
+libc_hidden_proto (__pthread_key_delete)
 extern void *__pthread_getspecific (pthread_key_t key);
 libc_hidden_proto (__pthread_getspecific)
 extern int __pthread_setspecific (pthread_key_t key, const void *value);
diff --git a/nptl/pthread_key_delete.c b/nptl/pthread_key_delete.c
index b9018306b1..081821cc02 100644
--- a/nptl/pthread_key_delete.c
+++ b/nptl/pthread_key_delete.c
@@ -19,10 +19,10 @@
 #include <errno.h>
 #include "pthreadP.h"
 #include <atomic.h>
-
+#include <shlib-compat.h>
 
 int
-__pthread_key_delete (pthread_key_t key)
+__pthread_key_delete_1 (pthread_key_t key)
 {
   int result = EINVAL;
 
@@ -39,4 +39,15 @@ __pthread_key_delete (pthread_key_t key)
 
   return result;
 }
-weak_alias (__pthread_key_delete, pthread_key_delete)
+versioned_symbol (libc, __pthread_key_delete_1, pthread_key_delete,
+		  GLIBC_2_34);
+libc_hidden_ver (__pthread_key_delete_1, __pthread_key_delete)
+
+strong_alias (__pthread_key_delete_1, __pthread_key_delete_2)
+versioned_symbol (libc, __pthread_key_delete_2, __pthread_key_delete,
+		  GLIBC_PRIVATE);
+
+#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_34)
+strong_alias (__pthread_key_delete_1, __pthread_key_delete_3)
+compat_symbol (libc, __pthread_key_delete_3, pthread_key_delete, GLIBC_2_0);
+#endif
diff --git a/sysdeps/unix/sysv/linux/aarch64/libc.abilist b/sysdeps/unix/sysv/linux/aarch64/libc.abilist
index 2601be32bf..991efa0044 100644
--- a/sysdeps/unix/sysv/linux/aarch64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/aarch64/libc.abilist
@@ -1454,6 +1454,7 @@ GLIBC_2.17 pthread_getattr_np F
 GLIBC_2.17 pthread_getschedparam F
 GLIBC_2.17 pthread_getspecific F
 GLIBC_2.17 pthread_key_create F
+GLIBC_2.17 pthread_key_delete F
 GLIBC_2.17 pthread_mutex_consistent F
 GLIBC_2.17 pthread_mutex_consistent_np F
 GLIBC_2.17 pthread_mutex_destroy F
@@ -2196,6 +2197,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist
index 778eb45ffc..50ab959905 100644
--- a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist
@@ -85,7 +85,6 @@ GLIBC_2.17 pthread_getconcurrency F
 GLIBC_2.17 pthread_getcpuclockid F
 GLIBC_2.17 pthread_getname_np F
 GLIBC_2.17 pthread_join F
-GLIBC_2.17 pthread_key_delete F
 GLIBC_2.17 pthread_kill F
 GLIBC_2.17 pthread_kill_other_threads_np F
 GLIBC_2.17 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/alpha/libc.abilist b/sysdeps/unix/sysv/linux/alpha/libc.abilist
index d334d0759d..a1229e4a1a 100644
--- a/sysdeps/unix/sysv/linux/alpha/libc.abilist
+++ b/sysdeps/unix/sysv/linux/alpha/libc.abilist
@@ -893,6 +893,7 @@ GLIBC_2.0 pthread_exit F
 GLIBC_2.0 pthread_getschedparam F
 GLIBC_2.0 pthread_getspecific F
 GLIBC_2.0 pthread_key_create F
+GLIBC_2.0 pthread_key_delete F
 GLIBC_2.0 pthread_mutex_destroy F
 GLIBC_2.0 pthread_mutex_init F
 GLIBC_2.0 pthread_mutex_lock F
@@ -2277,6 +2278,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist
index 8ccbe19154..9d78d94466 100644
--- a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist
@@ -41,7 +41,6 @@ GLIBC_2.0 pthread_cond_wait F
 GLIBC_2.0 pthread_create F
 GLIBC_2.0 pthread_detach F
 GLIBC_2.0 pthread_join F
-GLIBC_2.0 pthread_key_delete F
 GLIBC_2.0 pthread_kill F
 GLIBC_2.0 pthread_kill_other_threads_np F
 GLIBC_2.0 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/arc/libc.abilist b/sysdeps/unix/sysv/linux/arc/libc.abilist
index 49034a2bdd..ceee863b25 100644
--- a/sysdeps/unix/sysv/linux/arc/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arc/libc.abilist
@@ -1381,6 +1381,7 @@ GLIBC_2.32 pthread_getattr_np F
 GLIBC_2.32 pthread_getschedparam F
 GLIBC_2.32 pthread_getspecific F
 GLIBC_2.32 pthread_key_create F
+GLIBC_2.32 pthread_key_delete F
 GLIBC_2.32 pthread_mutex_consistent F
 GLIBC_2.32 pthread_mutex_consistent_np F
 GLIBC_2.32 pthread_mutex_destroy F
@@ -1956,6 +1957,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/arc/libpthread.abilist b/sysdeps/unix/sysv/linux/arc/libpthread.abilist
index fba129cfad..6fed825b25 100644
--- a/sysdeps/unix/sysv/linux/arc/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/arc/libpthread.abilist
@@ -99,7 +99,6 @@ GLIBC_2.32 pthread_getconcurrency F
 GLIBC_2.32 pthread_getcpuclockid F
 GLIBC_2.32 pthread_getname_np F
 GLIBC_2.32 pthread_join F
-GLIBC_2.32 pthread_key_delete F
 GLIBC_2.32 pthread_kill F
 GLIBC_2.32 pthread_kill_other_threads_np F
 GLIBC_2.32 pthread_mutex_clocklock F
diff --git a/sysdeps/unix/sysv/linux/arm/be/libc.abilist b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
index 3727e33898..31e2de3cc2 100644
--- a/sysdeps/unix/sysv/linux/arm/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
@@ -165,6 +165,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
@@ -1559,6 +1560,7 @@ GLIBC_2.4 pthread_getattr_np F
 GLIBC_2.4 pthread_getschedparam F
 GLIBC_2.4 pthread_getspecific F
 GLIBC_2.4 pthread_key_create F
+GLIBC_2.4 pthread_key_delete F
 GLIBC_2.4 pthread_mutex_consistent_np F
 GLIBC_2.4 pthread_mutex_destroy F
 GLIBC_2.4 pthread_mutex_init F
diff --git a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist
index 2cb1f0e2f5..5d3859b245 100644
--- a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist
@@ -118,7 +118,6 @@ GLIBC_2.4 pthread_detach F
 GLIBC_2.4 pthread_getconcurrency F
 GLIBC_2.4 pthread_getcpuclockid F
 GLIBC_2.4 pthread_join F
-GLIBC_2.4 pthread_key_delete F
 GLIBC_2.4 pthread_kill F
 GLIBC_2.4 pthread_kill_other_threads_np F
 GLIBC_2.4 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/arm/le/libc.abilist b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
index a7bc3a9a8e..c6f9e3dbc3 100644
--- a/sysdeps/unix/sysv/linux/arm/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
@@ -162,6 +162,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
@@ -1556,6 +1557,7 @@ GLIBC_2.4 pthread_getattr_np F
 GLIBC_2.4 pthread_getschedparam F
 GLIBC_2.4 pthread_getspecific F
 GLIBC_2.4 pthread_key_create F
+GLIBC_2.4 pthread_key_delete F
 GLIBC_2.4 pthread_mutex_consistent_np F
 GLIBC_2.4 pthread_mutex_destroy F
 GLIBC_2.4 pthread_mutex_init F
diff --git a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist
index 2cb1f0e2f5..5d3859b245 100644
--- a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist
@@ -118,7 +118,6 @@ GLIBC_2.4 pthread_detach F
 GLIBC_2.4 pthread_getconcurrency F
 GLIBC_2.4 pthread_getcpuclockid F
 GLIBC_2.4 pthread_join F
-GLIBC_2.4 pthread_key_delete F
 GLIBC_2.4 pthread_kill F
 GLIBC_2.4 pthread_kill_other_threads_np F
 GLIBC_2.4 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/csky/libc.abilist b/sysdeps/unix/sysv/linux/csky/libc.abilist
index 61de7117bd..ec7f3bde74 100644
--- a/sysdeps/unix/sysv/linux/csky/libc.abilist
+++ b/sysdeps/unix/sysv/linux/csky/libc.abilist
@@ -1442,6 +1442,7 @@ GLIBC_2.29 pthread_getattr_np F
 GLIBC_2.29 pthread_getschedparam F
 GLIBC_2.29 pthread_getspecific F
 GLIBC_2.29 pthread_key_create F
+GLIBC_2.29 pthread_key_delete F
 GLIBC_2.29 pthread_mutex_consistent F
 GLIBC_2.29 pthread_mutex_consistent_np F
 GLIBC_2.29 pthread_mutex_destroy F
@@ -2140,6 +2141,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/csky/libpthread.abilist b/sysdeps/unix/sysv/linux/csky/libpthread.abilist
index 760740a4ed..cf7869867c 100644
--- a/sysdeps/unix/sysv/linux/csky/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/csky/libpthread.abilist
@@ -97,7 +97,6 @@ GLIBC_2.29 pthread_getconcurrency F
 GLIBC_2.29 pthread_getcpuclockid F
 GLIBC_2.29 pthread_getname_np F
 GLIBC_2.29 pthread_join F
-GLIBC_2.29 pthread_key_delete F
 GLIBC_2.29 pthread_kill F
 GLIBC_2.29 pthread_kill_other_threads_np F
 GLIBC_2.29 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/hppa/libc.abilist b/sysdeps/unix/sysv/linux/hppa/libc.abilist
index c380a422ca..ebced5d8c3 100644
--- a/sysdeps/unix/sysv/linux/hppa/libc.abilist
+++ b/sysdeps/unix/sysv/linux/hppa/libc.abilist
@@ -1277,6 +1277,7 @@ GLIBC_2.2 pthread_exit F
 GLIBC_2.2 pthread_getschedparam F
 GLIBC_2.2 pthread_getspecific F
 GLIBC_2.2 pthread_key_create F
+GLIBC_2.2 pthread_key_delete F
 GLIBC_2.2 pthread_mutex_destroy F
 GLIBC_2.2 pthread_mutex_init F
 GLIBC_2.2 pthread_mutex_lock F
@@ -2098,6 +2099,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist
index c24d832b13..d0e8564302 100644
--- a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist
@@ -84,7 +84,6 @@ GLIBC_2.2 pthread_detach F
 GLIBC_2.2 pthread_getconcurrency F
 GLIBC_2.2 pthread_getcpuclockid F
 GLIBC_2.2 pthread_join F
-GLIBC_2.2 pthread_key_delete F
 GLIBC_2.2 pthread_kill F
 GLIBC_2.2 pthread_kill_other_threads_np F
 GLIBC_2.2 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/i386/libc.abilist b/sysdeps/unix/sysv/linux/i386/libc.abilist
index dd10b08625..d15479dabd 100644
--- a/sysdeps/unix/sysv/linux/i386/libc.abilist
+++ b/sysdeps/unix/sysv/linux/i386/libc.abilist
@@ -870,6 +870,7 @@ GLIBC_2.0 pthread_exit F
 GLIBC_2.0 pthread_getschedparam F
 GLIBC_2.0 pthread_getspecific F
 GLIBC_2.0 pthread_key_create F
+GLIBC_2.0 pthread_key_delete F
 GLIBC_2.0 pthread_mutex_destroy F
 GLIBC_2.0 pthread_mutex_init F
 GLIBC_2.0 pthread_mutex_lock F
@@ -2265,6 +2266,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/i386/libpthread.abilist b/sysdeps/unix/sysv/linux/i386/libpthread.abilist
index 6b644a2513..99e53d0c49 100644
--- a/sysdeps/unix/sysv/linux/i386/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/i386/libpthread.abilist
@@ -41,7 +41,6 @@ GLIBC_2.0 pthread_cond_wait F
 GLIBC_2.0 pthread_create F
 GLIBC_2.0 pthread_detach F
 GLIBC_2.0 pthread_join F
-GLIBC_2.0 pthread_key_delete F
 GLIBC_2.0 pthread_kill F
 GLIBC_2.0 pthread_kill_other_threads_np F
 GLIBC_2.0 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/ia64/libc.abilist b/sysdeps/unix/sysv/linux/ia64/libc.abilist
index fe64b5c1f0..62c8c7d461 100644
--- a/sysdeps/unix/sysv/linux/ia64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/ia64/libc.abilist
@@ -1298,6 +1298,7 @@ GLIBC_2.2 pthread_exit F
 GLIBC_2.2 pthread_getschedparam F
 GLIBC_2.2 pthread_getspecific F
 GLIBC_2.2 pthread_key_create F
+GLIBC_2.2 pthread_key_delete F
 GLIBC_2.2 pthread_mutex_destroy F
 GLIBC_2.2 pthread_mutex_init F
 GLIBC_2.2 pthread_mutex_lock F
@@ -2130,6 +2131,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist
index 1669fb860d..ff37f3905e 100644
--- a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist
@@ -84,7 +84,6 @@ GLIBC_2.2 pthread_detach F
 GLIBC_2.2 pthread_getconcurrency F
 GLIBC_2.2 pthread_getcpuclockid F
 GLIBC_2.2 pthread_join F
-GLIBC_2.2 pthread_key_delete F
 GLIBC_2.2 pthread_kill F
 GLIBC_2.2 pthread_kill_other_threads_np F
 GLIBC_2.2 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
index 1af30ff1b3..83e8a6824f 100644
--- a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
@@ -166,6 +166,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
@@ -1539,6 +1540,7 @@ GLIBC_2.4 pthread_getattr_np F
 GLIBC_2.4 pthread_getschedparam F
 GLIBC_2.4 pthread_getspecific F
 GLIBC_2.4 pthread_key_create F
+GLIBC_2.4 pthread_key_delete F
 GLIBC_2.4 pthread_mutex_consistent_np F
 GLIBC_2.4 pthread_mutex_destroy F
 GLIBC_2.4 pthread_mutex_init F
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
index 2cb1f0e2f5..5d3859b245 100644
--- a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
@@ -118,7 +118,6 @@ GLIBC_2.4 pthread_detach F
 GLIBC_2.4 pthread_getconcurrency F
 GLIBC_2.4 pthread_getcpuclockid F
 GLIBC_2.4 pthread_join F
-GLIBC_2.4 pthread_key_delete F
 GLIBC_2.4 pthread_kill F
 GLIBC_2.4 pthread_kill_other_threads_np F
 GLIBC_2.4 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
index 372bb9db63..5a81c61de7 100644
--- a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
@@ -869,6 +869,7 @@ GLIBC_2.0 pthread_exit F
 GLIBC_2.0 pthread_getschedparam F
 GLIBC_2.0 pthread_getspecific F
 GLIBC_2.0 pthread_key_create F
+GLIBC_2.0 pthread_key_delete F
 GLIBC_2.0 pthread_mutex_destroy F
 GLIBC_2.0 pthread_mutex_init F
 GLIBC_2.0 pthread_mutex_lock F
@@ -2210,6 +2211,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
index 6b644a2513..99e53d0c49 100644
--- a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
@@ -41,7 +41,6 @@ GLIBC_2.0 pthread_cond_wait F
 GLIBC_2.0 pthread_create F
 GLIBC_2.0 pthread_detach F
 GLIBC_2.0 pthread_join F
-GLIBC_2.0 pthread_key_delete F
 GLIBC_2.0 pthread_kill F
 GLIBC_2.0 pthread_kill_other_threads_np F
 GLIBC_2.0 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
index 7b1b02ff24..39c806db53 100644
--- a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
@@ -1457,6 +1457,7 @@ GLIBC_2.18 pthread_getattr_np F
 GLIBC_2.18 pthread_getschedparam F
 GLIBC_2.18 pthread_getspecific F
 GLIBC_2.18 pthread_key_create F
+GLIBC_2.18 pthread_key_delete F
 GLIBC_2.18 pthread_mutex_consistent F
 GLIBC_2.18 pthread_mutex_consistent_np F
 GLIBC_2.18 pthread_mutex_destroy F
@@ -2191,6 +2192,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist
index 64e0587af6..8b3785414d 100644
--- a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist
@@ -86,7 +86,6 @@ GLIBC_2.18 pthread_getconcurrency F
 GLIBC_2.18 pthread_getcpuclockid F
 GLIBC_2.18 pthread_getname_np F
 GLIBC_2.18 pthread_join F
-GLIBC_2.18 pthread_key_delete F
 GLIBC_2.18 pthread_kill F
 GLIBC_2.18 pthread_kill_other_threads_np F
 GLIBC_2.18 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
index 07ec814a0d..ce2823207c 100644
--- a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
@@ -1457,6 +1457,7 @@ GLIBC_2.18 pthread_getattr_np F
 GLIBC_2.18 pthread_getschedparam F
 GLIBC_2.18 pthread_getspecific F
 GLIBC_2.18 pthread_key_create F
+GLIBC_2.18 pthread_key_delete F
 GLIBC_2.18 pthread_mutex_consistent F
 GLIBC_2.18 pthread_mutex_consistent_np F
 GLIBC_2.18 pthread_mutex_destroy F
@@ -2188,6 +2189,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist
index 64e0587af6..8b3785414d 100644
--- a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist
@@ -86,7 +86,6 @@ GLIBC_2.18 pthread_getconcurrency F
 GLIBC_2.18 pthread_getcpuclockid F
 GLIBC_2.18 pthread_getname_np F
 GLIBC_2.18 pthread_join F
-GLIBC_2.18 pthread_key_delete F
 GLIBC_2.18 pthread_kill F
 GLIBC_2.18 pthread_kill_other_threads_np F
 GLIBC_2.18 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
index 51253a4216..5e8abfa6ae 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
@@ -866,6 +866,7 @@ GLIBC_2.0 pthread_exit F
 GLIBC_2.0 pthread_getschedparam F
 GLIBC_2.0 pthread_getspecific F
 GLIBC_2.0 pthread_key_create F
+GLIBC_2.0 pthread_key_delete F
 GLIBC_2.0 pthread_mutex_destroy F
 GLIBC_2.0 pthread_mutex_init F
 GLIBC_2.0 pthread_mutex_lock F
@@ -2181,6 +2182,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
index 1118a25c82..cd0d6d7419 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
@@ -41,7 +41,6 @@ GLIBC_2.0 pthread_cond_wait F
 GLIBC_2.0 pthread_create F
 GLIBC_2.0 pthread_detach F
 GLIBC_2.0 pthread_join F
-GLIBC_2.0 pthread_key_delete F
 GLIBC_2.0 pthread_kill F
 GLIBC_2.0 pthread_kill_other_threads_np F
 GLIBC_2.0 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
index 2574b7627e..93002ae842 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
@@ -866,6 +866,7 @@ GLIBC_2.0 pthread_exit F
 GLIBC_2.0 pthread_getschedparam F
 GLIBC_2.0 pthread_getspecific F
 GLIBC_2.0 pthread_key_create F
+GLIBC_2.0 pthread_key_delete F
 GLIBC_2.0 pthread_mutex_destroy F
 GLIBC_2.0 pthread_mutex_init F
 GLIBC_2.0 pthread_mutex_lock F
@@ -2179,6 +2180,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
index 1118a25c82..cd0d6d7419 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
@@ -41,7 +41,6 @@ GLIBC_2.0 pthread_cond_wait F
 GLIBC_2.0 pthread_create F
 GLIBC_2.0 pthread_detach F
 GLIBC_2.0 pthread_join F
-GLIBC_2.0 pthread_key_delete F
 GLIBC_2.0 pthread_kill F
 GLIBC_2.0 pthread_kill_other_threads_np F
 GLIBC_2.0 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
index 0580b260e2..245a840e12 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
@@ -866,6 +866,7 @@ GLIBC_2.0 pthread_exit F
 GLIBC_2.0 pthread_getschedparam F
 GLIBC_2.0 pthread_getspecific F
 GLIBC_2.0 pthread_key_create F
+GLIBC_2.0 pthread_key_delete F
 GLIBC_2.0 pthread_mutex_destroy F
 GLIBC_2.0 pthread_mutex_init F
 GLIBC_2.0 pthread_mutex_lock F
@@ -2187,6 +2188,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
index 40fe64ea6b..24b2dddb51 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
@@ -864,6 +864,7 @@ GLIBC_2.0 pthread_exit F
 GLIBC_2.0 pthread_getschedparam F
 GLIBC_2.0 pthread_getspecific F
 GLIBC_2.0 pthread_key_create F
+GLIBC_2.0 pthread_key_delete F
 GLIBC_2.0 pthread_mutex_destroy F
 GLIBC_2.0 pthread_mutex_init F
 GLIBC_2.0 pthread_mutex_lock F
@@ -2181,6 +2182,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/nios2/libc.abilist b/sysdeps/unix/sysv/linux/nios2/libc.abilist
index b9400803eb..7d4b4dd278 100644
--- a/sysdeps/unix/sysv/linux/nios2/libc.abilist
+++ b/sysdeps/unix/sysv/linux/nios2/libc.abilist
@@ -1499,6 +1499,7 @@ GLIBC_2.21 pthread_getattr_np F
 GLIBC_2.21 pthread_getschedparam F
 GLIBC_2.21 pthread_getspecific F
 GLIBC_2.21 pthread_key_create F
+GLIBC_2.21 pthread_key_delete F
 GLIBC_2.21 pthread_mutex_consistent F
 GLIBC_2.21 pthread_mutex_consistent_np F
 GLIBC_2.21 pthread_mutex_destroy F
@@ -2229,6 +2230,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist
index 96d1cd0f49..0250c9756d 100644
--- a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist
@@ -86,7 +86,6 @@ GLIBC_2.21 pthread_getconcurrency F
 GLIBC_2.21 pthread_getcpuclockid F
 GLIBC_2.21 pthread_getname_np F
 GLIBC_2.21 pthread_join F
-GLIBC_2.21 pthread_key_delete F
 GLIBC_2.21 pthread_kill F
 GLIBC_2.21 pthread_kill_other_threads_np F
 GLIBC_2.21 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
index 9f27e4aa50..65ea41b2db 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
@@ -877,6 +877,7 @@ GLIBC_2.0 pthread_exit F
 GLIBC_2.0 pthread_getschedparam F
 GLIBC_2.0 pthread_getspecific F
 GLIBC_2.0 pthread_key_create F
+GLIBC_2.0 pthread_key_delete F
 GLIBC_2.0 pthread_mutex_destroy F
 GLIBC_2.0 pthread_mutex_init F
 GLIBC_2.0 pthread_mutex_lock F
@@ -2237,6 +2238,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
index a8111f4b92..e0eb362a7a 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
@@ -41,7 +41,6 @@ GLIBC_2.0 pthread_cond_wait F
 GLIBC_2.0 pthread_create F
 GLIBC_2.0 pthread_detach F
 GLIBC_2.0 pthread_join F
-GLIBC_2.0 pthread_key_delete F
 GLIBC_2.0 pthread_kill F
 GLIBC_2.0 pthread_kill_other_threads_np F
 GLIBC_2.0 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
index 9c91e65fc1..9d413de126 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
@@ -877,6 +877,7 @@ GLIBC_2.0 pthread_exit F
 GLIBC_2.0 pthread_getschedparam F
 GLIBC_2.0 pthread_getspecific F
 GLIBC_2.0 pthread_key_create F
+GLIBC_2.0 pthread_key_delete F
 GLIBC_2.0 pthread_mutex_destroy F
 GLIBC_2.0 pthread_mutex_init F
 GLIBC_2.0 pthread_mutex_lock F
@@ -2270,6 +2271,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
index 0ef070e285..16c24bfc69 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
@@ -1384,6 +1384,7 @@ GLIBC_2.3 pthread_getattr_np F
 GLIBC_2.3 pthread_getschedparam F
 GLIBC_2.3 pthread_getspecific F
 GLIBC_2.3 pthread_key_create F
+GLIBC_2.3 pthread_key_delete F
 GLIBC_2.3 pthread_mutex_destroy F
 GLIBC_2.3 pthread_mutex_init F
 GLIBC_2.3 pthread_mutex_lock F
@@ -2100,6 +2101,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
index a0f5dffd25..1099d88afe 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
@@ -104,7 +104,6 @@ GLIBC_2.3 pthread_detach F
 GLIBC_2.3 pthread_getconcurrency F
 GLIBC_2.3 pthread_getcpuclockid F
 GLIBC_2.3 pthread_join F
-GLIBC_2.3 pthread_key_delete F
 GLIBC_2.3 pthread_kill F
 GLIBC_2.3 pthread_kill_other_threads_np F
 GLIBC_2.3 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
index 4a6de68ece..d97c594edd 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
@@ -1543,6 +1543,7 @@ GLIBC_2.17 pthread_getattr_np F
 GLIBC_2.17 pthread_getschedparam F
 GLIBC_2.17 pthread_getspecific F
 GLIBC_2.17 pthread_key_create F
+GLIBC_2.17 pthread_key_delete F
 GLIBC_2.17 pthread_mutex_consistent F
 GLIBC_2.17 pthread_mutex_consistent_np F
 GLIBC_2.17 pthread_mutex_destroy F
@@ -2391,6 +2392,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
index 778eb45ffc..50ab959905 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
@@ -85,7 +85,6 @@ GLIBC_2.17 pthread_getconcurrency F
 GLIBC_2.17 pthread_getcpuclockid F
 GLIBC_2.17 pthread_getname_np F
 GLIBC_2.17 pthread_join F
-GLIBC_2.17 pthread_key_delete F
 GLIBC_2.17 pthread_kill F
 GLIBC_2.17 pthread_kill_other_threads_np F
 GLIBC_2.17 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
index 62f9d06cc6..44b0121343 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
@@ -1383,6 +1383,7 @@ GLIBC_2.33 pthread_getattr_np F
 GLIBC_2.33 pthread_getschedparam F
 GLIBC_2.33 pthread_getspecific F
 GLIBC_2.33 pthread_key_create F
+GLIBC_2.33 pthread_key_delete F
 GLIBC_2.33 pthread_mutex_consistent F
 GLIBC_2.33 pthread_mutex_consistent_np F
 GLIBC_2.33 pthread_mutex_destroy F
@@ -1958,6 +1959,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist
index dc38dee1ae..6c6fdd0cbf 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist
@@ -99,7 +99,6 @@ GLIBC_2.33 pthread_getconcurrency F
 GLIBC_2.33 pthread_getcpuclockid F
 GLIBC_2.33 pthread_getname_np F
 GLIBC_2.33 pthread_join F
-GLIBC_2.33 pthread_key_delete F
 GLIBC_2.33 pthread_kill F
 GLIBC_2.33 pthread_kill_other_threads_np F
 GLIBC_2.33 pthread_mutex_clocklock F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
index 63976e8487..22a34442f0 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
@@ -1445,6 +1445,7 @@ GLIBC_2.27 pthread_getattr_np F
 GLIBC_2.27 pthread_getschedparam F
 GLIBC_2.27 pthread_getspecific F
 GLIBC_2.27 pthread_key_create F
+GLIBC_2.27 pthread_key_delete F
 GLIBC_2.27 pthread_mutex_consistent F
 GLIBC_2.27 pthread_mutex_consistent_np F
 GLIBC_2.27 pthread_mutex_destroy F
@@ -2158,6 +2159,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
index a78a847c1a..359545faee 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
@@ -86,7 +86,6 @@ GLIBC_2.27 pthread_getconcurrency F
 GLIBC_2.27 pthread_getcpuclockid F
 GLIBC_2.27 pthread_getname_np F
 GLIBC_2.27 pthread_join F
-GLIBC_2.27 pthread_key_delete F
 GLIBC_2.27 pthread_kill F
 GLIBC_2.27 pthread_kill_other_threads_np F
 GLIBC_2.27 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
index 8b159936e4..21f49b1fa0 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
@@ -868,6 +868,7 @@ GLIBC_2.0 pthread_exit F
 GLIBC_2.0 pthread_getschedparam F
 GLIBC_2.0 pthread_getspecific F
 GLIBC_2.0 pthread_key_create F
+GLIBC_2.0 pthread_key_delete F
 GLIBC_2.0 pthread_mutex_destroy F
 GLIBC_2.0 pthread_mutex_init F
 GLIBC_2.0 pthread_mutex_lock F
@@ -2235,6 +2236,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
index 5f9f4da233..5eb6187d98 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
@@ -41,7 +41,6 @@ GLIBC_2.0 pthread_cond_wait F
 GLIBC_2.0 pthread_create F
 GLIBC_2.0 pthread_detach F
 GLIBC_2.0 pthread_join F
-GLIBC_2.0 pthread_key_delete F
 GLIBC_2.0 pthread_kill F
 GLIBC_2.0 pthread_kill_other_threads_np F
 GLIBC_2.0 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
index 5bbf8fdbb4..114591d6f5 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
@@ -1295,6 +1295,7 @@ GLIBC_2.2 pthread_exit F
 GLIBC_2.2 pthread_getschedparam F
 GLIBC_2.2 pthread_getspecific F
 GLIBC_2.2 pthread_key_create F
+GLIBC_2.2 pthread_key_delete F
 GLIBC_2.2 pthread_mutex_destroy F
 GLIBC_2.2 pthread_mutex_init F
 GLIBC_2.2 pthread_mutex_lock F
@@ -2136,6 +2137,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
index ec27acf8c2..8f60a6b633 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
@@ -85,7 +85,6 @@ GLIBC_2.2 pthread_detach F
 GLIBC_2.2 pthread_getconcurrency F
 GLIBC_2.2 pthread_getcpuclockid F
 GLIBC_2.2 pthread_join F
-GLIBC_2.2 pthread_key_delete F
 GLIBC_2.2 pthread_kill F
 GLIBC_2.2 pthread_kill_other_threads_np F
 GLIBC_2.2 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/sh/be/libc.abilist b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
index 10ea3c59b9..ad487f0c9f 100644
--- a/sysdeps/unix/sysv/linux/sh/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
@@ -1281,6 +1281,7 @@ GLIBC_2.2 pthread_exit F
 GLIBC_2.2 pthread_getschedparam F
 GLIBC_2.2 pthread_getspecific F
 GLIBC_2.2 pthread_key_create F
+GLIBC_2.2 pthread_key_delete F
 GLIBC_2.2 pthread_mutex_destroy F
 GLIBC_2.2 pthread_mutex_init F
 GLIBC_2.2 pthread_mutex_lock F
@@ -2105,6 +2106,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist
index c24d832b13..d0e8564302 100644
--- a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist
@@ -84,7 +84,6 @@ GLIBC_2.2 pthread_detach F
 GLIBC_2.2 pthread_getconcurrency F
 GLIBC_2.2 pthread_getcpuclockid F
 GLIBC_2.2 pthread_join F
-GLIBC_2.2 pthread_key_delete F
 GLIBC_2.2 pthread_kill F
 GLIBC_2.2 pthread_kill_other_threads_np F
 GLIBC_2.2 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/sh/le/libc.abilist b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
index 12d492b088..7f6886ff02 100644
--- a/sysdeps/unix/sysv/linux/sh/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
@@ -1281,6 +1281,7 @@ GLIBC_2.2 pthread_exit F
 GLIBC_2.2 pthread_getschedparam F
 GLIBC_2.2 pthread_getspecific F
 GLIBC_2.2 pthread_key_create F
+GLIBC_2.2 pthread_key_delete F
 GLIBC_2.2 pthread_mutex_destroy F
 GLIBC_2.2 pthread_mutex_init F
 GLIBC_2.2 pthread_mutex_lock F
@@ -2102,6 +2103,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist
index c24d832b13..d0e8564302 100644
--- a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist
@@ -84,7 +84,6 @@ GLIBC_2.2 pthread_detach F
 GLIBC_2.2 pthread_getconcurrency F
 GLIBC_2.2 pthread_getcpuclockid F
 GLIBC_2.2 pthread_join F
-GLIBC_2.2 pthread_key_delete F
 GLIBC_2.2 pthread_kill F
 GLIBC_2.2 pthread_kill_other_threads_np F
 GLIBC_2.2 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
index 3bb06d6ce0..4ae6d45923 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
@@ -871,6 +871,7 @@ GLIBC_2.0 pthread_exit F
 GLIBC_2.0 pthread_getschedparam F
 GLIBC_2.0 pthread_getspecific F
 GLIBC_2.0 pthread_key_create F
+GLIBC_2.0 pthread_key_delete F
 GLIBC_2.0 pthread_mutex_destroy F
 GLIBC_2.0 pthread_mutex_init F
 GLIBC_2.0 pthread_mutex_lock F
@@ -2226,6 +2227,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
index 8ccbe19154..9d78d94466 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
@@ -41,7 +41,6 @@ GLIBC_2.0 pthread_cond_wait F
 GLIBC_2.0 pthread_create F
 GLIBC_2.0 pthread_detach F
 GLIBC_2.0 pthread_join F
-GLIBC_2.0 pthread_key_delete F
 GLIBC_2.0 pthread_kill F
 GLIBC_2.0 pthread_kill_other_threads_np F
 GLIBC_2.0 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
index 8a32fa3e95..44d0f68cb2 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
@@ -1324,6 +1324,7 @@ GLIBC_2.2 pthread_exit F
 GLIBC_2.2 pthread_getschedparam F
 GLIBC_2.2 pthread_getspecific F
 GLIBC_2.2 pthread_key_create F
+GLIBC_2.2 pthread_key_delete F
 GLIBC_2.2 pthread_mutex_destroy F
 GLIBC_2.2 pthread_mutex_init F
 GLIBC_2.2 pthread_mutex_lock F
@@ -2153,6 +2154,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
index 1669fb860d..ff37f3905e 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
@@ -84,7 +84,6 @@ GLIBC_2.2 pthread_detach F
 GLIBC_2.2 pthread_getconcurrency F
 GLIBC_2.2 pthread_getcpuclockid F
 GLIBC_2.2 pthread_join F
-GLIBC_2.2 pthread_key_delete F
 GLIBC_2.2 pthread_kill F
 GLIBC_2.2 pthread_kill_other_threads_np F
 GLIBC_2.2 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
index e05acdd11a..d96699a20d 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
@@ -1292,6 +1292,7 @@ GLIBC_2.2.5 pthread_getattr_np F
 GLIBC_2.2.5 pthread_getschedparam F
 GLIBC_2.2.5 pthread_getspecific F
 GLIBC_2.2.5 pthread_key_create F
+GLIBC_2.2.5 pthread_key_delete F
 GLIBC_2.2.5 pthread_mutex_destroy F
 GLIBC_2.2.5 pthread_mutex_init F
 GLIBC_2.2.5 pthread_mutex_lock F
@@ -2112,6 +2113,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
index f4d633ca96..511240921e 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
@@ -84,7 +84,6 @@ GLIBC_2.2.5 pthread_detach F
 GLIBC_2.2.5 pthread_getconcurrency F
 GLIBC_2.2.5 pthread_getcpuclockid F
 GLIBC_2.2.5 pthread_join F
-GLIBC_2.2.5 pthread_key_delete F
 GLIBC_2.2.5 pthread_kill F
 GLIBC_2.2.5 pthread_kill_other_threads_np F
 GLIBC_2.2.5 pthread_mutex_destroy F
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
index 8800e570a4..33bbaff90c 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
@@ -1462,6 +1462,7 @@ GLIBC_2.16 pthread_getattr_np F
 GLIBC_2.16 pthread_getschedparam F
 GLIBC_2.16 pthread_getspecific F
 GLIBC_2.16 pthread_key_create F
+GLIBC_2.16 pthread_key_delete F
 GLIBC_2.16 pthread_mutex_consistent F
 GLIBC_2.16 pthread_mutex_consistent_np F
 GLIBC_2.16 pthread_mutex_destroy F
@@ -2210,6 +2211,7 @@ GLIBC_2.34 __pthread_setspecific F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 pthread_getspecific F
 GLIBC_2.34 pthread_key_create F
+GLIBC_2.34 pthread_key_delete F
 GLIBC_2.34 pthread_mutex_consistent F
 GLIBC_2.34 pthread_once F
 GLIBC_2.34 pthread_setspecific F
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
index b687932187..a481ef56ab 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
@@ -85,7 +85,6 @@ GLIBC_2.16 pthread_getconcurrency F
 GLIBC_2.16 pthread_getcpuclockid F
 GLIBC_2.16 pthread_getname_np F
 GLIBC_2.16 pthread_join F
-GLIBC_2.16 pthread_key_delete F
 GLIBC_2.16 pthread_kill F
 GLIBC_2.16 pthread_kill_other_threads_np F
 GLIBC_2.16 pthread_mutex_destroy F
-- 
2.29.2



  parent reply	other threads:[~2021-03-16 17:30 UTC|newest]

Thread overview: 99+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-16 17:27 [PATCH v3 00/37] libpthread removal: NPTL forwarders are gone Florian Weimer
2021-03-16 17:27 ` [PATCH v3 01/37] nptl: Move pthread_mutex_consistent into libc Florian Weimer
2021-03-17 11:36   ` Adhemerval Zanella
2021-03-16 17:27 ` [PATCH v3 02/37] nptl: Move __pthread_cleanup_routine " Florian Weimer
2021-03-16 17:27 ` [PATCH v3 03/37] nptl: Move legacy unwinding implementation " Florian Weimer
2021-03-16 17:27 ` [PATCH v3 04/37] nptl: Move legacy cancelation handling into libc as compat symbols Florian Weimer
2021-03-16 17:27 ` [PATCH v3 05/37] nptl: Remove longjmp, siglongjmp from libpthread Florian Weimer
2021-03-17 11:38   ` Adhemerval Zanella
2021-03-16 17:28 ` [PATCH v3 06/37] x86: Restore compile-time check for shadow stack pointer in longjmp Florian Weimer
2021-03-16 17:28 ` [PATCH v3 07/37] nptl: Move __pthread_cleanup_upto into libc Florian Weimer
2021-03-16 17:28 ` [PATCH v3 08/37] nptl: Move pthread_once and __pthread_once " Florian Weimer
2021-03-17 13:30   ` Adhemerval Zanella
2021-03-17 13:37     ` Adhemerval Zanella
2021-03-17 14:45       ` Florian Weimer
2021-03-17 16:39         ` Adhemerval Zanella
2021-03-17 16:56           ` Florian Weimer
2021-03-17 17:22             ` Adhemerval Zanella
2021-03-17 17:43               ` Florian Weimer
2021-03-17 19:09                 ` Adhemerval Zanella
2021-03-16 17:29 ` [PATCH v3 09/37] nptl: Move __pthread_unwind_next " Florian Weimer
2021-03-17 19:42   ` Adhemerval Zanella
2021-03-17 19:54     ` Florian Weimer
2021-03-17 20:16       ` Adhemerval Zanella
2021-03-17 20:33         ` Florian Weimer
2021-03-17 20:44           ` Adhemerval Zanella
2021-03-16 17:29 ` [PATCH v3 10/37] csu: Move calling main out of __libc_start_main_impl Florian Weimer
2021-03-17 20:45   ` Adhemerval Zanella
2021-03-16 17:29 ` [PATCH v3 11/37] nptl: Move internal __nptl_nthreads variable into libc Florian Weimer
2021-03-18 12:42   ` Adhemerval Zanella
2021-03-16 17:29 ` [PATCH v3 12/37] nptl_db: Introduce DB_MAIN_ARRAY_VARIABLE Florian Weimer
2021-03-18 12:43   ` Adhemerval Zanella
2021-03-16 17:29 ` [PATCH v3 13/37] nptl: Move __pthread_keys global variable into libc Florian Weimer
2021-03-18 12:44   ` Adhemerval Zanella
2021-03-16 17:29 ` [PATCH v3 14/37] nptl: Move __nptl_deallocate_tsd " Florian Weimer
2021-03-18 12:46   ` Adhemerval Zanella
2021-03-18 17:16     ` Florian Weimer
2021-03-18 17:54       ` Adhemerval Zanella
2021-03-16 17:29 ` [PATCH v3 15/37] nptl: Move pthread_exit " Florian Weimer
2021-03-18 12:49   ` Adhemerval Zanella
2021-03-16 17:29 ` [PATCH v3 16/37] nptl: Move pthread_setcancelstate " Florian Weimer
2021-03-18 12:52   ` Adhemerval Zanella
2021-03-16 17:29 ` [PATCH v3 17/37] nptl: Move pthread_setcanceltype " Florian Weimer
2021-03-18 12:53   ` Adhemerval Zanella
2021-03-16 17:29 ` [PATCH v3 18/37] nptl: Invoke the set_robust_list system call directly in fork Florian Weimer
2021-03-18 12:54   ` Adhemerval Zanella
2021-03-16 17:30 ` [PATCH v3 19/37] dlfcn: Failures after dlmopen should not terminate process [BZ #24772] Florian Weimer
2021-03-19 19:56   ` Adhemerval Zanella
2021-03-27 16:57     ` Florian Weimer
2021-03-16 17:30 ` [PATCH v3 20/37] dlfcn: dlerror needs to call free from the base namespace [BZ #24773] Florian Weimer
2021-03-23 14:47   ` Adhemerval Zanella
2021-03-16 17:30 ` [PATCH v3 21/37] Remove pthread_key_create-related internals from libc-lock.h Florian Weimer
2021-03-23 16:39   ` Adhemerval Zanella
2021-03-16 17:30 ` [PATCH v3 22/37] elf: Introduce __tls_init_tp for second-phase TCB initialization Florian Weimer
2021-03-23 18:25   ` Adhemerval Zanella
2021-03-16 17:30 ` [PATCH v3 23/37] nptl: Move part of TCB initialization from libpthread to __tls_init_tp Florian Weimer
2021-03-24 13:56   ` Adhemerval Zanella
2021-03-27 17:19     ` Florian Weimer
2021-03-16 17:30 ` [PATCH v3 24/37] nptl: Move pthread_key_create, __pthread_key_create into libc Florian Weimer
2021-03-24 14:09   ` Adhemerval Zanella
2021-03-24 14:32     ` Florian Weimer
2021-03-24 14:42       ` Adhemerval Zanella
2021-03-24 15:08         ` Florian Weimer
2021-03-24 15:46           ` Adhemerval Zanella
2021-03-16 17:30 ` [PATCH v3 25/37] nptl: Move pthread_getspecific, __pthread_getspecific " Florian Weimer
2021-03-24 14:12   ` Adhemerval Zanella
2021-03-24 14:38     ` Florian Weimer
2021-03-24 14:43       ` Adhemerval Zanella
2021-03-16 17:30 ` [PATCH v3 26/37] nptl: Move pthread_setspecific, __pthread_setspecific " Florian Weimer
2021-03-24 14:26   ` Adhemerval Zanella
2021-03-16 17:30 ` Florian Weimer [this message]
2021-03-24 14:45   ` [PATCH v3 27/37] nptl: Move pthread_key_delete " Adhemerval Zanella
2021-03-16 17:31 ` [PATCH v3 28/37] nptl: Move rwlock functions with forwarders " Florian Weimer
2021-03-25 19:52   ` Adhemerval Zanella
2021-03-27 21:41     ` Florian Weimer
2021-03-16 17:31 ` [PATCH v3 29/37] nptl: Move the internal thread priority protection symbols " Florian Weimer
2021-03-25 20:21   ` Adhemerval Zanella
2021-03-16 17:31 ` [PATCH v3 30/37] pthread: Introduce __pthread_early_init Florian Weimer
2021-03-25 20:22   ` Adhemerval Zanella
2021-03-16 17:31 ` [PATCH v3 31/37] nptl: Move internal symbol __mutex_aconf into libc Florian Weimer
2021-03-25 20:24   ` Adhemerval Zanella
2021-03-16 17:31 ` [PATCH v3 32/37] nptl: pthread_mutex_lock, pthread_mutex_unock single-threaded optimization Florian Weimer
2021-03-26 18:00   ` Adhemerval Zanella
2021-03-16 17:31 ` [PATCH v3 33/37] x86: Remove low-level lock optimization Florian Weimer
2021-03-25 20:30   ` Adhemerval Zanella
2021-03-16 17:31 ` [PATCH v3 34/37] nptl: Move core mutex functions into libc Florian Weimer
2021-03-25 20:46   ` Adhemerval Zanella
2021-03-16 17:31 ` [PATCH v3 35/37] nptl: Move core condition variable " Florian Weimer
2021-03-26 17:14   ` Adhemerval Zanella
2021-03-16 17:31 ` [PATCH v3 36/37] nptl: Move setxid broadcast implementation " Florian Weimer
2021-03-26 18:15   ` Adhemerval Zanella
2021-04-06 18:41     ` Florian Weimer
2021-04-06 18:54       ` Adhemerval Zanella
2021-04-06 19:23         ` Florian Weimer
2021-04-06 19:40           ` Adhemerval Zanella
2021-03-16 17:31 ` [PATCH v3 37/37] nptl: Remove remnants of the libc/libpthread forwarder interface Florian Weimer
2021-03-26 18:19   ` Adhemerval Zanella
2021-03-18 22:06 ` [PATCH v3 00/37] libpthread removal: NPTL forwarders are gone Florian Weimer
2021-03-26 18:25 ` Adhemerval Zanella
2021-03-31 10:18   ` Florian Weimer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=213b9f1d5300956f7dae7f29c3de212b8537d4b7.1615914632.git.fweimer@redhat.com \
    --to=fweimer@redhat.com \
    --cc=libc-alpha@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).