diff --git a/nptl/Makefile b/nptl/Makefile
index 42d602a870..c89bc8baae 100644
--- a/nptl/Makefile
+++ b/nptl/Makefile
@@ -212,8 +212,6 @@ libpthread-routines = \
   sem_timedwait \
   sem_unlink \
   sem_wait \
-  sigaction \
-  libc_sigaction \
   tpp \
   unwind \
   unwind-forcedunwind \
diff --git a/nptl/Versions b/nptl/Versions
index 697982bf1f..fdabab01fa 100644
--- a/nptl/Versions
+++ b/nptl/Versions
@@ -122,7 +122,6 @@ libpthread {
     __pthread_mutexattr_settype;
     __pthread_once;
     __pthread_setspecific;
-    __sigaction;
     _exit;
     _pthread_cleanup_pop;
     _pthread_cleanup_pop_restore;
@@ -167,7 +166,6 @@ libpthread {
     sem_post;
     sem_trywait;
     sem_wait;
-    sigaction;
     siglongjmp;
   }
 
diff --git a/nptl/sigaction.c b/nptl/sigaction.c
deleted file mode 100644
index 3de724b6b2..0000000000
--- a/nptl/sigaction.c
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Copyright (C) 2002-2021 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-   Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, see
-   <https://www.gnu.org/licenses/>.  */
-
-#include <internal-signals.h>
-
-int
-__sigaction (int sig, const struct sigaction *act, struct sigaction *oact)
-{
-  if (sig <= 0 || sig >= NSIG || __is_internal_signal (sig))
-    {
-      __set_errno (EINVAL);
-      return -1;
-    }
-
-  return __libc_sigaction (sig, act, oact);
-}
-libc_hidden_weak (__sigaction)
-weak_alias (__sigaction, sigaction)
diff --git a/signal/Versions b/signal/Versions
index a915ef400f..c844d4c144 100644
--- a/signal/Versions
+++ b/signal/Versions
@@ -51,4 +51,7 @@ libc {
   }
   GLIBC_2.21 {
   }
+  GLIBC_PRIVATE {
+    __libc_sigaction;
+  }
 }
diff --git a/sysdeps/unix/syscalls.list b/sysdeps/unix/syscalls.list
index 7209c24110..341eec20f1 100644
--- a/sysdeps/unix/syscalls.list
+++ b/sysdeps/unix/syscalls.list
@@ -74,7 +74,6 @@ setsid		-	setsid		i:	__setsid	setsid
 setsockopt	-	setsockopt	i:iiibn	setsockopt	__setsockopt
 setuid		-	setuid		i:i	__setuid	setuid
 shutdown	-	shutdown	i:ii	shutdown
-sigaction	-	sigaction	i:ipp	__sigaction	sigaction
 sigsuspend	-	sigsuspend	Ci:p	sigsuspend
 socket		-	socket		i:iii	__socket	socket
 socketpair	-	socketpair	i:iiif	socketpair
diff --git a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist
index 8f29a20e1e..73d4d7ce48 100644
--- a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist
@@ -32,7 +32,6 @@ GLIBC_2.17 __pthread_unregister_cancel F
 GLIBC_2.17 __pthread_unregister_cancel_restore F
 GLIBC_2.17 __pthread_unwind_next F
 GLIBC_2.17 __res_state F
-GLIBC_2.17 __sigaction F
 GLIBC_2.17 _pthread_cleanup_pop F
 GLIBC_2.17 _pthread_cleanup_pop_restore F
 GLIBC_2.17 _pthread_cleanup_push F
@@ -146,7 +145,6 @@ GLIBC_2.17 sem_timedwait F
 GLIBC_2.17 sem_trywait F
 GLIBC_2.17 sem_unlink F
 GLIBC_2.17 sem_wait F
-GLIBC_2.17 sigaction F
 GLIBC_2.17 siglongjmp F
 GLIBC_2.18 pthread_getattr_default_np F
 GLIBC_2.18 pthread_setattr_default_np F
diff --git a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist
index 4d6547c75e..b18c666b01 100644
--- a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist
@@ -15,7 +15,6 @@ GLIBC_2.0 __pthread_mutexattr_init F
 GLIBC_2.0 __pthread_mutexattr_settype F
 GLIBC_2.0 __pthread_once F
 GLIBC_2.0 __pthread_setspecific F
-GLIBC_2.0 __sigaction F
 GLIBC_2.0 _pthread_cleanup_pop F
 GLIBC_2.0 _pthread_cleanup_pop_restore F
 GLIBC_2.0 _pthread_cleanup_push F
@@ -58,7 +57,6 @@ GLIBC_2.0 sem_init F
 GLIBC_2.0 sem_post F
 GLIBC_2.0 sem_trywait F
 GLIBC_2.0 sem_wait F
-GLIBC_2.0 sigaction F
 GLIBC_2.0 siglongjmp F
 GLIBC_2.1 __libc_allocate_rtsig F
 GLIBC_2.1 __libc_current_sigrtmax F
diff --git a/sysdeps/unix/sysv/linux/arc/libpthread.abilist b/sysdeps/unix/sysv/linux/arc/libpthread.abilist
index d279cc73e0..865715cdfc 100644
--- a/sysdeps/unix/sysv/linux/arc/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/arc/libpthread.abilist
@@ -32,7 +32,6 @@ GLIBC_2.32 __pthread_unregister_cancel F
 GLIBC_2.32 __pthread_unregister_cancel_restore F
 GLIBC_2.32 __pthread_unwind_next F
 GLIBC_2.32 __res_state F
-GLIBC_2.32 __sigaction F
 GLIBC_2.32 _pthread_cleanup_pop F
 GLIBC_2.32 _pthread_cleanup_pop_restore F
 GLIBC_2.32 _pthread_cleanup_push F
@@ -166,7 +165,6 @@ GLIBC_2.32 sem_timedwait F
 GLIBC_2.32 sem_trywait F
 GLIBC_2.32 sem_unlink F
 GLIBC_2.32 sem_wait F
-GLIBC_2.32 sigaction F
 GLIBC_2.32 thrd_create F
 GLIBC_2.32 thrd_detach F
 GLIBC_2.32 thrd_exit F
diff --git a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist
index 8df3bafa99..1c63d79c84 100644
--- a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist
@@ -67,7 +67,6 @@ GLIBC_2.4 __pthread_unregister_cancel F
 GLIBC_2.4 __pthread_unregister_cancel_restore F
 GLIBC_2.4 __pthread_unwind_next F
 GLIBC_2.4 __res_state F
-GLIBC_2.4 __sigaction F
 GLIBC_2.4 _pthread_cleanup_pop F
 GLIBC_2.4 _pthread_cleanup_pop_restore F
 GLIBC_2.4 _pthread_cleanup_push F
@@ -175,5 +174,4 @@ GLIBC_2.4 sem_timedwait F
 GLIBC_2.4 sem_trywait F
 GLIBC_2.4 sem_unlink F
 GLIBC_2.4 sem_wait F
-GLIBC_2.4 sigaction F
 GLIBC_2.4 siglongjmp F
diff --git a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist
index 8df3bafa99..1c63d79c84 100644
--- a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist
@@ -67,7 +67,6 @@ GLIBC_2.4 __pthread_unregister_cancel F
 GLIBC_2.4 __pthread_unregister_cancel_restore F
 GLIBC_2.4 __pthread_unwind_next F
 GLIBC_2.4 __res_state F
-GLIBC_2.4 __sigaction F
 GLIBC_2.4 _pthread_cleanup_pop F
 GLIBC_2.4 _pthread_cleanup_pop_restore F
 GLIBC_2.4 _pthread_cleanup_push F
@@ -175,5 +174,4 @@ GLIBC_2.4 sem_timedwait F
 GLIBC_2.4 sem_trywait F
 GLIBC_2.4 sem_unlink F
 GLIBC_2.4 sem_wait F
-GLIBC_2.4 sigaction F
 GLIBC_2.4 siglongjmp F
diff --git a/sysdeps/unix/sysv/linux/csky/libpthread.abilist b/sysdeps/unix/sysv/linux/csky/libpthread.abilist
index 6dc646b74e..2408ab5462 100644
--- a/sysdeps/unix/sysv/linux/csky/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/csky/libpthread.abilist
@@ -32,7 +32,6 @@ GLIBC_2.29 __pthread_unregister_cancel F
 GLIBC_2.29 __pthread_unregister_cancel_restore F
 GLIBC_2.29 __pthread_unwind_next F
 GLIBC_2.29 __res_state F
-GLIBC_2.29 __sigaction F
 GLIBC_2.29 _pthread_cleanup_pop F
 GLIBC_2.29 _pthread_cleanup_pop_restore F
 GLIBC_2.29 _pthread_cleanup_push F
@@ -160,7 +159,6 @@ GLIBC_2.29 sem_timedwait F
 GLIBC_2.29 sem_trywait F
 GLIBC_2.29 sem_unlink F
 GLIBC_2.29 sem_wait F
-GLIBC_2.29 sigaction F
 GLIBC_2.29 thrd_create F
 GLIBC_2.29 thrd_detach F
 GLIBC_2.29 thrd_exit F
diff --git a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist
index 26a4a18a91..bdf9195208 100644
--- a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist
@@ -34,7 +34,6 @@ GLIBC_2.2 __pthread_rwlock_unlock F
 GLIBC_2.2 __pthread_rwlock_wrlock F
 GLIBC_2.2 __pthread_setspecific F
 GLIBC_2.2 __res_state F
-GLIBC_2.2 __sigaction F
 GLIBC_2.2 _pthread_cleanup_pop F
 GLIBC_2.2 _pthread_cleanup_pop_restore F
 GLIBC_2.2 _pthread_cleanup_push F
@@ -126,7 +125,6 @@ GLIBC_2.2 sem_timedwait F
 GLIBC_2.2 sem_trywait F
 GLIBC_2.2 sem_unlink F
 GLIBC_2.2 sem_wait F
-GLIBC_2.2 sigaction F
 GLIBC_2.2 siglongjmp F
 GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
diff --git a/sysdeps/unix/sysv/linux/i386/libpthread.abilist b/sysdeps/unix/sysv/linux/i386/libpthread.abilist
index fe6d086be6..88aaf4147e 100644
--- a/sysdeps/unix/sysv/linux/i386/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/i386/libpthread.abilist
@@ -15,7 +15,6 @@ GLIBC_2.0 __pthread_mutexattr_init F
 GLIBC_2.0 __pthread_mutexattr_settype F
 GLIBC_2.0 __pthread_once F
 GLIBC_2.0 __pthread_setspecific F
-GLIBC_2.0 __sigaction F
 GLIBC_2.0 _pthread_cleanup_pop F
 GLIBC_2.0 _pthread_cleanup_pop_restore F
 GLIBC_2.0 _pthread_cleanup_push F
@@ -58,7 +57,6 @@ GLIBC_2.0 sem_init F
 GLIBC_2.0 sem_post F
 GLIBC_2.0 sem_trywait F
 GLIBC_2.0 sem_wait F
-GLIBC_2.0 sigaction F
 GLIBC_2.0 siglongjmp F
 GLIBC_2.1 __libc_allocate_rtsig F
 GLIBC_2.1 __libc_current_sigrtmax F
diff --git a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist
index 43fd3ea39a..409779a2eb 100644
--- a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist
@@ -34,7 +34,6 @@ GLIBC_2.2 __pthread_rwlock_unlock F
 GLIBC_2.2 __pthread_rwlock_wrlock F
 GLIBC_2.2 __pthread_setspecific F
 GLIBC_2.2 __res_state F
-GLIBC_2.2 __sigaction F
 GLIBC_2.2 _pthread_cleanup_pop F
 GLIBC_2.2 _pthread_cleanup_pop_restore F
 GLIBC_2.2 _pthread_cleanup_push F
@@ -126,7 +125,6 @@ GLIBC_2.2 sem_timedwait F
 GLIBC_2.2 sem_trywait F
 GLIBC_2.2 sem_unlink F
 GLIBC_2.2 sem_wait F
-GLIBC_2.2 sigaction F
 GLIBC_2.2 siglongjmp F
 GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
index 8df3bafa99..1c63d79c84 100644
--- a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
@@ -67,7 +67,6 @@ GLIBC_2.4 __pthread_unregister_cancel F
 GLIBC_2.4 __pthread_unregister_cancel_restore F
 GLIBC_2.4 __pthread_unwind_next F
 GLIBC_2.4 __res_state F
-GLIBC_2.4 __sigaction F
 GLIBC_2.4 _pthread_cleanup_pop F
 GLIBC_2.4 _pthread_cleanup_pop_restore F
 GLIBC_2.4 _pthread_cleanup_push F
@@ -175,5 +174,4 @@ GLIBC_2.4 sem_timedwait F
 GLIBC_2.4 sem_trywait F
 GLIBC_2.4 sem_unlink F
 GLIBC_2.4 sem_wait F
-GLIBC_2.4 sigaction F
 GLIBC_2.4 siglongjmp F
diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
index fe6d086be6..88aaf4147e 100644
--- a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
@@ -15,7 +15,6 @@ GLIBC_2.0 __pthread_mutexattr_init F
 GLIBC_2.0 __pthread_mutexattr_settype F
 GLIBC_2.0 __pthread_once F
 GLIBC_2.0 __pthread_setspecific F
-GLIBC_2.0 __sigaction F
 GLIBC_2.0 _pthread_cleanup_pop F
 GLIBC_2.0 _pthread_cleanup_pop_restore F
 GLIBC_2.0 _pthread_cleanup_push F
@@ -58,7 +57,6 @@ GLIBC_2.0 sem_init F
 GLIBC_2.0 sem_post F
 GLIBC_2.0 sem_trywait F
 GLIBC_2.0 sem_wait F
-GLIBC_2.0 sigaction F
 GLIBC_2.0 siglongjmp F
 GLIBC_2.1 __libc_allocate_rtsig F
 GLIBC_2.1 __libc_current_sigrtmax F
diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist
index c54635be17..40c77fcc99 100644
--- a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist
@@ -32,7 +32,6 @@ GLIBC_2.18 __pthread_unregister_cancel F
 GLIBC_2.18 __pthread_unregister_cancel_restore F
 GLIBC_2.18 __pthread_unwind_next F
 GLIBC_2.18 __res_state F
-GLIBC_2.18 __sigaction F
 GLIBC_2.18 _pthread_cleanup_pop F
 GLIBC_2.18 _pthread_cleanup_pop_restore F
 GLIBC_2.18 _pthread_cleanup_push F
@@ -148,7 +147,6 @@ GLIBC_2.18 sem_timedwait F
 GLIBC_2.18 sem_trywait F
 GLIBC_2.18 sem_unlink F
 GLIBC_2.18 sem_wait F
-GLIBC_2.18 sigaction F
 GLIBC_2.18 siglongjmp F
 GLIBC_2.28 call_once F
 GLIBC_2.28 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist
index c54635be17..40c77fcc99 100644
--- a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist
@@ -32,7 +32,6 @@ GLIBC_2.18 __pthread_unregister_cancel F
 GLIBC_2.18 __pthread_unregister_cancel_restore F
 GLIBC_2.18 __pthread_unwind_next F
 GLIBC_2.18 __res_state F
-GLIBC_2.18 __sigaction F
 GLIBC_2.18 _pthread_cleanup_pop F
 GLIBC_2.18 _pthread_cleanup_pop_restore F
 GLIBC_2.18 _pthread_cleanup_push F
@@ -148,7 +147,6 @@ GLIBC_2.18 sem_timedwait F
 GLIBC_2.18 sem_trywait F
 GLIBC_2.18 sem_unlink F
 GLIBC_2.18 sem_wait F
-GLIBC_2.18 sigaction F
 GLIBC_2.18 siglongjmp F
 GLIBC_2.28 call_once F
 GLIBC_2.28 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
index 45611b7e19..f991279bf5 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
@@ -15,7 +15,6 @@ GLIBC_2.0 __pthread_mutexattr_init F
 GLIBC_2.0 __pthread_mutexattr_settype F
 GLIBC_2.0 __pthread_once F
 GLIBC_2.0 __pthread_setspecific F
-GLIBC_2.0 __sigaction F
 GLIBC_2.0 _pthread_cleanup_pop F
 GLIBC_2.0 _pthread_cleanup_pop_restore F
 GLIBC_2.0 _pthread_cleanup_push F
@@ -58,7 +57,6 @@ GLIBC_2.0 sem_init F
 GLIBC_2.0 sem_post F
 GLIBC_2.0 sem_trywait F
 GLIBC_2.0 sem_wait F
-GLIBC_2.0 sigaction F
 GLIBC_2.0 siglongjmp F
 GLIBC_2.11 pthread_sigqueue F
 GLIBC_2.12 pthread_getname_np F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
index efbf2e3d40..e1c971c361 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
@@ -2157,6 +2157,7 @@ GLIBC_2.33 mknodat F
 GLIBC_2.33 stat F
 GLIBC_2.33 stat64 F
 GLIBC_2.34 __libc_start_main F
+GLIBC_2.34 pthread_kill F
 GLIBC_2.4 __confstr_chk F
 GLIBC_2.4 __fgets_chk F
 GLIBC_2.4 __fgets_unlocked_chk F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
index 45611b7e19..f991279bf5 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
@@ -15,7 +15,6 @@ GLIBC_2.0 __pthread_mutexattr_init F
 GLIBC_2.0 __pthread_mutexattr_settype F
 GLIBC_2.0 __pthread_once F
 GLIBC_2.0 __pthread_setspecific F
-GLIBC_2.0 __sigaction F
 GLIBC_2.0 _pthread_cleanup_pop F
 GLIBC_2.0 _pthread_cleanup_pop_restore F
 GLIBC_2.0 _pthread_cleanup_push F
@@ -58,7 +57,6 @@ GLIBC_2.0 sem_init F
 GLIBC_2.0 sem_post F
 GLIBC_2.0 sem_trywait F
 GLIBC_2.0 sem_wait F
-GLIBC_2.0 sigaction F
 GLIBC_2.0 siglongjmp F
 GLIBC_2.11 pthread_sigqueue F
 GLIBC_2.12 pthread_getname_np F
diff --git a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist
index 9a041c574b..0ccde43c25 100644
--- a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist
@@ -32,7 +32,6 @@ GLIBC_2.21 __pthread_unregister_cancel F
 GLIBC_2.21 __pthread_unregister_cancel_restore F
 GLIBC_2.21 __pthread_unwind_next F
 GLIBC_2.21 __res_state F
-GLIBC_2.21 __sigaction F
 GLIBC_2.21 _pthread_cleanup_pop F
 GLIBC_2.21 _pthread_cleanup_pop_restore F
 GLIBC_2.21 _pthread_cleanup_push F
@@ -148,7 +147,6 @@ GLIBC_2.21 sem_timedwait F
 GLIBC_2.21 sem_trywait F
 GLIBC_2.21 sem_unlink F
 GLIBC_2.21 sem_wait F
-GLIBC_2.21 sigaction F
 GLIBC_2.21 siglongjmp F
 GLIBC_2.28 call_once F
 GLIBC_2.28 cnd_broadcast F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
index 2db967a661..f9e188cc0f 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
@@ -15,7 +15,6 @@ GLIBC_2.0 __pthread_mutexattr_init F
 GLIBC_2.0 __pthread_mutexattr_settype F
 GLIBC_2.0 __pthread_once F
 GLIBC_2.0 __pthread_setspecific F
-GLIBC_2.0 __sigaction F
 GLIBC_2.0 _pthread_cleanup_pop F
 GLIBC_2.0 _pthread_cleanup_pop_restore F
 GLIBC_2.0 _pthread_cleanup_push F
@@ -58,7 +57,6 @@ GLIBC_2.0 sem_init F
 GLIBC_2.0 sem_post F
 GLIBC_2.0 sem_trywait F
 GLIBC_2.0 sem_wait F
-GLIBC_2.0 sigaction F
 GLIBC_2.0 siglongjmp F
 GLIBC_2.1 __libc_allocate_rtsig F
 GLIBC_2.1 __libc_current_sigrtmax F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
index 1667866af2..5c81a23740 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
@@ -2256,6 +2256,7 @@ GLIBC_2.33 mknodat F
 GLIBC_2.33 stat F
 GLIBC_2.33 stat64 F
 GLIBC_2.34 __libc_start_main F
+GLIBC_2.34 pthread_kill F
 GLIBC_2.4 _IO_fprintf F
 GLIBC_2.4 _IO_printf F
 GLIBC_2.4 _IO_sprintf F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
index 92522e3050..9447c703a3 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
@@ -55,7 +55,6 @@ GLIBC_2.3 __pthread_rwlock_unlock F
 GLIBC_2.3 __pthread_rwlock_wrlock F
 GLIBC_2.3 __pthread_setspecific F
 GLIBC_2.3 __res_state F
-GLIBC_2.3 __sigaction F
 GLIBC_2.3 _pthread_cleanup_pop F
 GLIBC_2.3 _pthread_cleanup_pop_restore F
 GLIBC_2.3 _pthread_cleanup_push F
@@ -146,7 +145,6 @@ GLIBC_2.3 sem_timedwait F
 GLIBC_2.3 sem_trywait F
 GLIBC_2.3 sem_unlink F
 GLIBC_2.3 sem_wait F
-GLIBC_2.3 sigaction F
 GLIBC_2.3 siglongjmp F
 GLIBC_2.3.2 pthread_cond_broadcast F
 GLIBC_2.3.2 pthread_cond_signal F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
index 8f29a20e1e..73d4d7ce48 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
@@ -32,7 +32,6 @@ GLIBC_2.17 __pthread_unregister_cancel F
 GLIBC_2.17 __pthread_unregister_cancel_restore F
 GLIBC_2.17 __pthread_unwind_next F
 GLIBC_2.17 __res_state F
-GLIBC_2.17 __sigaction F
 GLIBC_2.17 _pthread_cleanup_pop F
 GLIBC_2.17 _pthread_cleanup_pop_restore F
 GLIBC_2.17 _pthread_cleanup_push F
@@ -146,7 +145,6 @@ GLIBC_2.17 sem_timedwait F
 GLIBC_2.17 sem_trywait F
 GLIBC_2.17 sem_unlink F
 GLIBC_2.17 sem_wait F
-GLIBC_2.17 sigaction F
 GLIBC_2.17 siglongjmp F
 GLIBC_2.18 pthread_getattr_default_np F
 GLIBC_2.18 pthread_setattr_default_np F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist
index fd205edde3..2bae36a939 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist
@@ -32,7 +32,6 @@ GLIBC_2.33 __pthread_unregister_cancel F
 GLIBC_2.33 __pthread_unregister_cancel_restore F
 GLIBC_2.33 __pthread_unwind_next F
 GLIBC_2.33 __res_state F
-GLIBC_2.33 __sigaction F
 GLIBC_2.33 _pthread_cleanup_pop F
 GLIBC_2.33 _pthread_cleanup_pop_restore F
 GLIBC_2.33 _pthread_cleanup_push F
@@ -166,7 +165,6 @@ GLIBC_2.33 sem_timedwait F
 GLIBC_2.33 sem_trywait F
 GLIBC_2.33 sem_unlink F
 GLIBC_2.33 sem_wait F
-GLIBC_2.33 sigaction F
 GLIBC_2.33 thrd_create F
 GLIBC_2.33 thrd_detach F
 GLIBC_2.33 thrd_exit F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
index 847136b274..d4c07e880f 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
@@ -32,7 +32,6 @@ GLIBC_2.27 __pthread_unregister_cancel F
 GLIBC_2.27 __pthread_unregister_cancel_restore F
 GLIBC_2.27 __pthread_unwind_next F
 GLIBC_2.27 __res_state F
-GLIBC_2.27 __sigaction F
 GLIBC_2.27 _pthread_cleanup_pop F
 GLIBC_2.27 _pthread_cleanup_pop_restore F
 GLIBC_2.27 _pthread_cleanup_push F
@@ -147,7 +146,6 @@ GLIBC_2.27 sem_timedwait F
 GLIBC_2.27 sem_trywait F
 GLIBC_2.27 sem_unlink F
 GLIBC_2.27 sem_wait F
-GLIBC_2.27 sigaction F
 GLIBC_2.28 call_once F
 GLIBC_2.28 cnd_broadcast F
 GLIBC_2.28 cnd_destroy F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
index c2e140d4a8..181a605803 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
@@ -15,7 +15,6 @@ GLIBC_2.0 __pthread_mutexattr_init F
 GLIBC_2.0 __pthread_mutexattr_settype F
 GLIBC_2.0 __pthread_once F
 GLIBC_2.0 __pthread_setspecific F
-GLIBC_2.0 __sigaction F
 GLIBC_2.0 _pthread_cleanup_pop F
 GLIBC_2.0 _pthread_cleanup_pop_restore F
 GLIBC_2.0 _pthread_cleanup_push F
@@ -58,7 +57,6 @@ GLIBC_2.0 sem_init F
 GLIBC_2.0 sem_post F
 GLIBC_2.0 sem_trywait F
 GLIBC_2.0 sem_wait F
-GLIBC_2.0 sigaction F
 GLIBC_2.0 siglongjmp F
 GLIBC_2.1 __libc_allocate_rtsig F
 GLIBC_2.1 __libc_current_sigrtmax F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
index 7091c72066..1758f462aa 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
@@ -36,7 +36,6 @@ GLIBC_2.2 __pthread_rwlock_unlock F
 GLIBC_2.2 __pthread_rwlock_wrlock F
 GLIBC_2.2 __pthread_setspecific F
 GLIBC_2.2 __res_state F
-GLIBC_2.2 __sigaction F
 GLIBC_2.2 _pthread_cleanup_pop F
 GLIBC_2.2 _pthread_cleanup_pop_restore F
 GLIBC_2.2 _pthread_cleanup_push F
@@ -128,7 +127,6 @@ GLIBC_2.2 sem_timedwait F
 GLIBC_2.2 sem_trywait F
 GLIBC_2.2 sem_unlink F
 GLIBC_2.2 sem_wait F
-GLIBC_2.2 sigaction F
 GLIBC_2.2 siglongjmp F
 GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
diff --git a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist
index 26a4a18a91..bdf9195208 100644
--- a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist
@@ -34,7 +34,6 @@ GLIBC_2.2 __pthread_rwlock_unlock F
 GLIBC_2.2 __pthread_rwlock_wrlock F
 GLIBC_2.2 __pthread_setspecific F
 GLIBC_2.2 __res_state F
-GLIBC_2.2 __sigaction F
 GLIBC_2.2 _pthread_cleanup_pop F
 GLIBC_2.2 _pthread_cleanup_pop_restore F
 GLIBC_2.2 _pthread_cleanup_push F
@@ -126,7 +125,6 @@ GLIBC_2.2 sem_timedwait F
 GLIBC_2.2 sem_trywait F
 GLIBC_2.2 sem_unlink F
 GLIBC_2.2 sem_wait F
-GLIBC_2.2 sigaction F
 GLIBC_2.2 siglongjmp F
 GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
diff --git a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist
index 26a4a18a91..bdf9195208 100644
--- a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist
@@ -34,7 +34,6 @@ GLIBC_2.2 __pthread_rwlock_unlock F
 GLIBC_2.2 __pthread_rwlock_wrlock F
 GLIBC_2.2 __pthread_setspecific F
 GLIBC_2.2 __res_state F
-GLIBC_2.2 __sigaction F
 GLIBC_2.2 _pthread_cleanup_pop F
 GLIBC_2.2 _pthread_cleanup_pop_restore F
 GLIBC_2.2 _pthread_cleanup_push F
@@ -126,7 +125,6 @@ GLIBC_2.2 sem_timedwait F
 GLIBC_2.2 sem_trywait F
 GLIBC_2.2 sem_unlink F
 GLIBC_2.2 sem_wait F
-GLIBC_2.2 sigaction F
 GLIBC_2.2 siglongjmp F
 GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
index 4d6547c75e..b18c666b01 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
@@ -15,7 +15,6 @@ GLIBC_2.0 __pthread_mutexattr_init F
 GLIBC_2.0 __pthread_mutexattr_settype F
 GLIBC_2.0 __pthread_once F
 GLIBC_2.0 __pthread_setspecific F
-GLIBC_2.0 __sigaction F
 GLIBC_2.0 _pthread_cleanup_pop F
 GLIBC_2.0 _pthread_cleanup_pop_restore F
 GLIBC_2.0 _pthread_cleanup_push F
@@ -58,7 +57,6 @@ GLIBC_2.0 sem_init F
 GLIBC_2.0 sem_post F
 GLIBC_2.0 sem_trywait F
 GLIBC_2.0 sem_wait F
-GLIBC_2.0 sigaction F
 GLIBC_2.0 siglongjmp F
 GLIBC_2.1 __libc_allocate_rtsig F
 GLIBC_2.1 __libc_current_sigrtmax F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
index 43fd3ea39a..409779a2eb 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
@@ -34,7 +34,6 @@ GLIBC_2.2 __pthread_rwlock_unlock F
 GLIBC_2.2 __pthread_rwlock_wrlock F
 GLIBC_2.2 __pthread_setspecific F
 GLIBC_2.2 __res_state F
-GLIBC_2.2 __sigaction F
 GLIBC_2.2 _pthread_cleanup_pop F
 GLIBC_2.2 _pthread_cleanup_pop_restore F
 GLIBC_2.2 _pthread_cleanup_push F
@@ -126,7 +125,6 @@ GLIBC_2.2 sem_timedwait F
 GLIBC_2.2 sem_trywait F
 GLIBC_2.2 sem_unlink F
 GLIBC_2.2 sem_wait F
-GLIBC_2.2 sigaction F
 GLIBC_2.2 siglongjmp F
 GLIBC_2.2.3 __libpthread_version_placeholder F
 GLIBC_2.2.6 __libpthread_version_placeholder F
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
index 13112ed13e..2d3b2274b9 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
@@ -34,7 +34,6 @@ GLIBC_2.2.5 __pthread_rwlock_unlock F
 GLIBC_2.2.5 __pthread_rwlock_wrlock F
 GLIBC_2.2.5 __pthread_setspecific F
 GLIBC_2.2.5 __res_state F
-GLIBC_2.2.5 __sigaction F
 GLIBC_2.2.5 _pthread_cleanup_pop F
 GLIBC_2.2.5 _pthread_cleanup_pop_restore F
 GLIBC_2.2.5 _pthread_cleanup_push F
@@ -126,7 +125,6 @@ GLIBC_2.2.5 sem_timedwait F
 GLIBC_2.2.5 sem_trywait F
 GLIBC_2.2.5 sem_unlink F
 GLIBC_2.2.5 sem_wait F
-GLIBC_2.2.5 sigaction F
 GLIBC_2.2.5 siglongjmp F
 GLIBC_2.2.6 __libpthread_version_placeholder F
 GLIBC_2.28 call_once F
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
index 68a5f3d8ef..7851be75b5 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
@@ -32,7 +32,6 @@ GLIBC_2.16 __pthread_unregister_cancel F
 GLIBC_2.16 __pthread_unregister_cancel_restore F
 GLIBC_2.16 __pthread_unwind_next F
 GLIBC_2.16 __res_state F
-GLIBC_2.16 __sigaction F
 GLIBC_2.16 _pthread_cleanup_pop F
 GLIBC_2.16 _pthread_cleanup_pop_restore F
 GLIBC_2.16 _pthread_cleanup_push F
@@ -146,7 +145,6 @@ GLIBC_2.16 sem_timedwait F
 GLIBC_2.16 sem_trywait F
 GLIBC_2.16 sem_unlink F
 GLIBC_2.16 sem_wait F
-GLIBC_2.16 sigaction F
 GLIBC_2.16 siglongjmp F
 GLIBC_2.18 pthread_getattr_default_np F
 GLIBC_2.18 pthread_setattr_default_np F
