[PATCH 24/35] Linux: Move mq_notify from librt to libc
Florian Weimer
fweimer@redhat.com
Thu Jun 3 23:16:51 GMT 2021
The symbol was moved using scripts/move-symbol-to-libc.py.
An explicit call from fork into the mq_notify implementation replaces
the previous use of pthread_atfork.
---
include/mqueue.h | 4 ++
include/pthread.h | 3 +
rt/Makefile | 2 +-
rt/Versions | 4 +-
sysdeps/nptl/fork.c | 3 +
sysdeps/unix/sysv/linux/aarch64/libc.abilist | 2 +
sysdeps/unix/sysv/linux/aarch64/librt.abilist | 1 -
sysdeps/unix/sysv/linux/alpha/libc.abilist | 2 +
sysdeps/unix/sysv/linux/alpha/librt.abilist | 1 -
sysdeps/unix/sysv/linux/arc/libc.abilist | 2 +
sysdeps/unix/sysv/linux/arc/librt.abilist | 1 -
sysdeps/unix/sysv/linux/arm/be/libc.abilist | 2 +
sysdeps/unix/sysv/linux/arm/be/librt.abilist | 1 -
sysdeps/unix/sysv/linux/arm/le/libc.abilist | 2 +
sysdeps/unix/sysv/linux/arm/le/librt.abilist | 1 -
sysdeps/unix/sysv/linux/csky/libc.abilist | 2 +
sysdeps/unix/sysv/linux/csky/librt.abilist | 1 -
sysdeps/unix/sysv/linux/hppa/libc.abilist | 2 +
sysdeps/unix/sysv/linux/hppa/librt.abilist | 1 -
sysdeps/unix/sysv/linux/i386/libc.abilist | 2 +
sysdeps/unix/sysv/linux/i386/librt.abilist | 1 -
sysdeps/unix/sysv/linux/ia64/libc.abilist | 2 +
sysdeps/unix/sysv/linux/ia64/librt.abilist | 1 -
.../sysv/linux/m68k/coldfire/libc.abilist | 2 +
.../sysv/linux/m68k/coldfire/librt.abilist | 1 -
.../unix/sysv/linux/m68k/m680x0/libc.abilist | 2 +
.../unix/sysv/linux/m68k/m680x0/librt.abilist | 1 -
.../sysv/linux/microblaze/be/libc.abilist | 2 +
.../sysv/linux/microblaze/be/librt.abilist | 1 -
.../sysv/linux/microblaze/le/libc.abilist | 2 +
.../sysv/linux/microblaze/le/librt.abilist | 1 -
.../sysv/linux/mips/mips32/fpu/libc.abilist | 2 +
.../unix/sysv/linux/mips/mips32/librt.abilist | 1 -
.../sysv/linux/mips/mips32/nofpu/libc.abilist | 2 +
.../unix/sysv/linux/mips/mips64/librt.abilist | 1 -
.../sysv/linux/mips/mips64/n32/libc.abilist | 2 +
.../sysv/linux/mips/mips64/n64/libc.abilist | 2 +
sysdeps/unix/sysv/linux/mq_notify.c | 55 ++++++++-----------
sysdeps/unix/sysv/linux/nios2/libc.abilist | 2 +
sysdeps/unix/sysv/linux/nios2/librt.abilist | 1 -
.../linux/powerpc/powerpc32/fpu/libc.abilist | 2 +
.../linux/powerpc/powerpc32/librt.abilist | 1 -
.../powerpc/powerpc32/nofpu/libc.abilist | 2 +
.../linux/powerpc/powerpc64/be/libc.abilist | 2 +
.../linux/powerpc/powerpc64/be/librt.abilist | 1 -
.../linux/powerpc/powerpc64/le/libc.abilist | 2 +
.../linux/powerpc/powerpc64/le/librt.abilist | 1 -
.../unix/sysv/linux/riscv/rv32/libc.abilist | 2 +
.../unix/sysv/linux/riscv/rv32/librt.abilist | 1 -
.../unix/sysv/linux/riscv/rv64/libc.abilist | 2 +
.../unix/sysv/linux/riscv/rv64/librt.abilist | 1 -
.../unix/sysv/linux/s390/s390-32/libc.abilist | 2 +
.../sysv/linux/s390/s390-32/librt.abilist | 1 -
.../unix/sysv/linux/s390/s390-64/libc.abilist | 2 +
.../sysv/linux/s390/s390-64/librt.abilist | 1 -
sysdeps/unix/sysv/linux/sh/be/libc.abilist | 2 +
sysdeps/unix/sysv/linux/sh/be/librt.abilist | 1 -
sysdeps/unix/sysv/linux/sh/le/libc.abilist | 2 +
sysdeps/unix/sysv/linux/sh/le/librt.abilist | 1 -
.../sysv/linux/sparc/sparc32/libc.abilist | 2 +
.../sysv/linux/sparc/sparc32/librt.abilist | 1 -
.../sysv/linux/sparc/sparc64/libc.abilist | 2 +
.../sysv/linux/sparc/sparc64/librt.abilist | 1 -
.../unix/sysv/linux/x86_64/64/libc.abilist | 2 +
.../unix/sysv/linux/x86_64/64/librt.abilist | 1 -
.../unix/sysv/linux/x86_64/x32/libc.abilist | 2 +
.../unix/sysv/linux/x86_64/x32/librt.abilist | 1 -
67 files changed, 100 insertions(+), 64 deletions(-)
diff --git a/include/mqueue.h b/include/mqueue.h
index 008589f0fa..2c40c1e3fc 100644
--- a/include/mqueue.h
+++ b/include/mqueue.h
@@ -15,6 +15,10 @@ hidden_proto (mq_setattr)
# if PTHREAD_IN_LIBC
libc_hidden_proto (mq_setattr)
+
+/* Called from fork so that the new subprocess re-creates the
+ notification thread if necessary. */
+void __mq_notify_fork_subprocess (void) attribute_hidden;
# endif
#include <struct___timespec64.h>
diff --git a/include/pthread.h b/include/pthread.h
index a3e1cf51b0..b8167b8d69 100644
--- a/include/pthread.h
+++ b/include/pthread.h
@@ -13,6 +13,9 @@ libc_hidden_proto (__pthread_barrier_init)
#endif
extern int __pthread_barrier_wait (pthread_barrier_t *__barrier)
__THROWNL __nonnull ((1));
+#if PTHREAD_IN_LIBC
+libc_hidden_proto (__pthread_barrier_wait)
+#endif
/* This function is called to initialize the pthread library. */
extern void __pthread_initialize (void) __attribute__ ((weak));
diff --git a/rt/Makefile b/rt/Makefile
index a1d5661216..2376415a38 100644
--- a/rt/Makefile
+++ b/rt/Makefile
@@ -30,7 +30,6 @@ routines = \
librt-routines = \
librt-compat \
- mq_notify \
mq_open \
mq_receive \
mq_send \
@@ -62,6 +61,7 @@ $(librt-routines-var) += \
lio_listio64 \
mq_close \
mq_getattr \
+ mq_notify \
mq_setattr \
tests := tst-shm tst-timer tst-timer2 \
diff --git a/rt/Versions b/rt/Versions
index 38f23c16ef..b3c9bba9ff 100644
--- a/rt/Versions
+++ b/rt/Versions
@@ -28,6 +28,7 @@ libc {
%if PTHREAD_IN_LIBC
mq_close;
mq_getattr;
+ mq_notify;
mq_setattr;
%endif
}
@@ -58,6 +59,7 @@ libc {
lio_listio64;
mq_close;
mq_getattr;
+ mq_notify;
mq_setattr;
%endif
shm_open;
@@ -112,9 +114,9 @@ librt {
%if !PTHREAD_IN_LIBC
mq_close;
mq_getattr;
+ mq_notify;
mq_setattr;
%endif
- mq_notify;
mq_open;
mq_receive;
mq_send;
diff --git a/sysdeps/nptl/fork.c b/sysdeps/nptl/fork.c
index 39ab797612..d6a0996b79 100644
--- a/sysdeps/nptl/fork.c
+++ b/sysdeps/nptl/fork.c
@@ -36,6 +36,7 @@
#include <unwind-link.h>
#include <sys/single_threaded.h>
#include <list.h>
+#include <mqueue.h>
static void
fresetlockfiles (void)
@@ -229,6 +230,8 @@ __libc_fork (void)
/* Reset locks in the I/O code. */
_IO_list_resetlock ();
+ call_function_static_weak (__mq_notify_fork_subprocess);
+
call_function_static_weak (__nss_database_fork_subprocess,
&nss_database_data);
}
diff --git a/sysdeps/unix/sysv/linux/aarch64/libc.abilist b/sysdeps/unix/sysv/linux/aarch64/libc.abilist
index e192480e09..368ed7453b 100644
--- a/sysdeps/unix/sysv/linux/aarch64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/aarch64/libc.abilist
@@ -1359,6 +1359,7 @@ GLIBC_2.17 mprobe F
GLIBC_2.17 mprotect F
GLIBC_2.17 mq_close F
GLIBC_2.17 mq_getattr F
+GLIBC_2.17 mq_notify F
GLIBC_2.17 mq_setattr F
GLIBC_2.17 mrand48 F
GLIBC_2.17 mrand48_r F
@@ -2402,6 +2403,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/aarch64/librt.abilist b/sysdeps/unix/sysv/linux/aarch64/librt.abilist
index 33b825d874..6cab033b12 100644
--- a/sysdeps/unix/sysv/linux/aarch64/librt.abilist
+++ b/sysdeps/unix/sysv/linux/aarch64/librt.abilist
@@ -1,5 +1,4 @@
GLIBC_2.17 __mq_open_2 F
-GLIBC_2.17 mq_notify F
GLIBC_2.17 mq_open F
GLIBC_2.17 mq_receive F
GLIBC_2.17 mq_send F
diff --git a/sysdeps/unix/sysv/linux/alpha/libc.abilist b/sysdeps/unix/sysv/linux/alpha/libc.abilist
index d937d5b1f8..d26f035f0a 100644
--- a/sysdeps/unix/sysv/linux/alpha/libc.abilist
+++ b/sysdeps/unix/sysv/linux/alpha/libc.abilist
@@ -2394,6 +2394,7 @@ GLIBC_2.3.4 getipv4sourcefilter F
GLIBC_2.3.4 getsourcefilter F
GLIBC_2.3.4 mq_close F
GLIBC_2.3.4 mq_getattr F
+GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 pthread_attr_getaffinity_np F
GLIBC_2.3.4 pthread_attr_setaffinity_np F
@@ -2497,6 +2498,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/alpha/librt.abilist b/sysdeps/unix/sysv/linux/alpha/librt.abilist
index 29f9030371..d85884d888 100644
--- a/sysdeps/unix/sysv/linux/alpha/librt.abilist
+++ b/sysdeps/unix/sysv/linux/alpha/librt.abilist
@@ -10,7 +10,6 @@ GLIBC_2.3.3 timer_delete F
GLIBC_2.3.3 timer_getoverrun F
GLIBC_2.3.3 timer_gettime F
GLIBC_2.3.3 timer_settime F
-GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_open F
GLIBC_2.3.4 mq_receive F
GLIBC_2.3.4 mq_send F
diff --git a/sysdeps/unix/sysv/linux/arc/libc.abilist b/sysdeps/unix/sysv/linux/arc/libc.abilist
index 31f687ab4f..d8e431bc13 100644
--- a/sysdeps/unix/sysv/linux/arc/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arc/libc.abilist
@@ -1290,6 +1290,7 @@ GLIBC_2.32 mprobe F
GLIBC_2.32 mprotect F
GLIBC_2.32 mq_close F
GLIBC_2.32 mq_getattr F
+GLIBC_2.32 mq_notify F
GLIBC_2.32 mq_setattr F
GLIBC_2.32 mrand48 F
GLIBC_2.32 mrand48_r F
@@ -2161,6 +2162,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/arc/librt.abilist b/sysdeps/unix/sysv/linux/arc/librt.abilist
index 4143924c8b..16864093a0 100644
--- a/sysdeps/unix/sysv/linux/arc/librt.abilist
+++ b/sysdeps/unix/sysv/linux/arc/librt.abilist
@@ -1,5 +1,4 @@
GLIBC_2.32 __mq_open_2 F
-GLIBC_2.32 mq_notify F
GLIBC_2.32 mq_open F
GLIBC_2.32 mq_receive F
GLIBC_2.32 mq_send F
diff --git a/sysdeps/unix/sysv/linux/arm/be/libc.abilist b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
index e49023b653..a97e9d40ae 100644
--- a/sysdeps/unix/sysv/linux/arm/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
@@ -236,6 +236,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
@@ -1652,6 +1653,7 @@ GLIBC_2.4 mprobe F
GLIBC_2.4 mprotect F
GLIBC_2.4 mq_close F
GLIBC_2.4 mq_getattr F
+GLIBC_2.4 mq_notify F
GLIBC_2.4 mq_setattr F
GLIBC_2.4 mrand48 F
GLIBC_2.4 mrand48_r F
diff --git a/sysdeps/unix/sysv/linux/arm/be/librt.abilist b/sysdeps/unix/sysv/linux/arm/be/librt.abilist
index 019efdeb89..16c562cc57 100644
--- a/sysdeps/unix/sysv/linux/arm/be/librt.abilist
+++ b/sysdeps/unix/sysv/linux/arm/be/librt.abilist
@@ -1,4 +1,3 @@
-GLIBC_2.4 mq_notify F
GLIBC_2.4 mq_open F
GLIBC_2.4 mq_receive F
GLIBC_2.4 mq_send F
diff --git a/sysdeps/unix/sysv/linux/arm/le/libc.abilist b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
index 1e903842d2..0b957d1f10 100644
--- a/sysdeps/unix/sysv/linux/arm/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
@@ -233,6 +233,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
@@ -1649,6 +1650,7 @@ GLIBC_2.4 mprobe F
GLIBC_2.4 mprotect F
GLIBC_2.4 mq_close F
GLIBC_2.4 mq_getattr F
+GLIBC_2.4 mq_notify F
GLIBC_2.4 mq_setattr F
GLIBC_2.4 mrand48 F
GLIBC_2.4 mrand48_r F
diff --git a/sysdeps/unix/sysv/linux/arm/le/librt.abilist b/sysdeps/unix/sysv/linux/arm/le/librt.abilist
index 019efdeb89..16c562cc57 100644
--- a/sysdeps/unix/sysv/linux/arm/le/librt.abilist
+++ b/sysdeps/unix/sysv/linux/arm/le/librt.abilist
@@ -1,4 +1,3 @@
-GLIBC_2.4 mq_notify F
GLIBC_2.4 mq_open F
GLIBC_2.4 mq_receive F
GLIBC_2.4 mq_send F
diff --git a/sysdeps/unix/sysv/linux/csky/libc.abilist b/sysdeps/unix/sysv/linux/csky/libc.abilist
index 8fb5aaf4be..6f6bc16b0e 100644
--- a/sysdeps/unix/sysv/linux/csky/libc.abilist
+++ b/sysdeps/unix/sysv/linux/csky/libc.abilist
@@ -1345,6 +1345,7 @@ GLIBC_2.29 mprobe F
GLIBC_2.29 mprotect F
GLIBC_2.29 mq_close F
GLIBC_2.29 mq_getattr F
+GLIBC_2.29 mq_notify F
GLIBC_2.29 mq_setattr F
GLIBC_2.29 mrand48 F
GLIBC_2.29 mrand48_r F
@@ -2345,6 +2346,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/csky/librt.abilist b/sysdeps/unix/sysv/linux/csky/librt.abilist
index a44c501d49..cb268470a2 100644
--- a/sysdeps/unix/sysv/linux/csky/librt.abilist
+++ b/sysdeps/unix/sysv/linux/csky/librt.abilist
@@ -1,5 +1,4 @@
GLIBC_2.29 __mq_open_2 F
-GLIBC_2.29 mq_notify F
GLIBC_2.29 mq_open F
GLIBC_2.29 mq_receive F
GLIBC_2.29 mq_send F
diff --git a/sysdeps/unix/sysv/linux/hppa/libc.abilist b/sysdeps/unix/sysv/linux/hppa/libc.abilist
index d3f2a9fbed..a5d44d7394 100644
--- a/sysdeps/unix/sysv/linux/hppa/libc.abilist
+++ b/sysdeps/unix/sysv/linux/hppa/libc.abilist
@@ -2208,6 +2208,7 @@ GLIBC_2.3.4 getipv4sourcefilter F
GLIBC_2.3.4 getsourcefilter F
GLIBC_2.3.4 mq_close F
GLIBC_2.3.4 mq_getattr F
+GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 pthread_attr_getaffinity_np F
GLIBC_2.3.4 pthread_attr_setaffinity_np F
@@ -2299,6 +2300,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/hppa/librt.abilist b/sysdeps/unix/sysv/linux/hppa/librt.abilist
index 3618d3e898..56e82a8a53 100644
--- a/sysdeps/unix/sysv/linux/hppa/librt.abilist
+++ b/sysdeps/unix/sysv/linux/hppa/librt.abilist
@@ -4,7 +4,6 @@ GLIBC_2.2 timer_delete F
GLIBC_2.2 timer_getoverrun F
GLIBC_2.2 timer_gettime F
GLIBC_2.2 timer_settime F
-GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_open F
GLIBC_2.3.4 mq_receive F
GLIBC_2.3.4 mq_send F
diff --git a/sysdeps/unix/sysv/linux/i386/libc.abilist b/sysdeps/unix/sysv/linux/i386/libc.abilist
index d23ded400b..7758073583 100644
--- a/sysdeps/unix/sysv/linux/i386/libc.abilist
+++ b/sysdeps/unix/sysv/linux/i386/libc.abilist
@@ -2389,6 +2389,7 @@ GLIBC_2.3.4 getipv4sourcefilter F
GLIBC_2.3.4 getsourcefilter F
GLIBC_2.3.4 mq_close F
GLIBC_2.3.4 mq_getattr F
+GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 pthread_attr_getaffinity_np F
GLIBC_2.3.4 pthread_attr_setaffinity_np F
@@ -2483,6 +2484,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/i386/librt.abilist b/sysdeps/unix/sysv/linux/i386/librt.abilist
index 3618d3e898..56e82a8a53 100644
--- a/sysdeps/unix/sysv/linux/i386/librt.abilist
+++ b/sysdeps/unix/sysv/linux/i386/librt.abilist
@@ -4,7 +4,6 @@ GLIBC_2.2 timer_delete F
GLIBC_2.2 timer_getoverrun F
GLIBC_2.2 timer_gettime F
GLIBC_2.2 timer_settime F
-GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_open F
GLIBC_2.3.4 mq_receive F
GLIBC_2.3.4 mq_send F
diff --git a/sysdeps/unix/sysv/linux/ia64/libc.abilist b/sysdeps/unix/sysv/linux/ia64/libc.abilist
index a84e585a5a..ae6d041f13 100644
--- a/sysdeps/unix/sysv/linux/ia64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/ia64/libc.abilist
@@ -2243,6 +2243,7 @@ GLIBC_2.3.4 getipv4sourcefilter F
GLIBC_2.3.4 getsourcefilter F
GLIBC_2.3.4 mq_close F
GLIBC_2.3.4 mq_getattr F
+GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 pthread_attr_getaffinity_np F
GLIBC_2.3.4 pthread_attr_setaffinity_np F
@@ -2335,6 +2336,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/ia64/librt.abilist b/sysdeps/unix/sysv/linux/ia64/librt.abilist
index 38edc31e90..1ec96c2786 100644
--- a/sysdeps/unix/sysv/linux/ia64/librt.abilist
+++ b/sysdeps/unix/sysv/linux/ia64/librt.abilist
@@ -9,7 +9,6 @@ GLIBC_2.3.3 timer_delete F
GLIBC_2.3.3 timer_getoverrun F
GLIBC_2.3.3 timer_gettime F
GLIBC_2.3.3 timer_settime F
-GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_open F
GLIBC_2.3.4 mq_receive F
GLIBC_2.3.4 mq_send F
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
index a8b6530236..9bbcd02ff2 100644
--- a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
@@ -237,6 +237,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
@@ -1636,6 +1637,7 @@ GLIBC_2.4 mprobe F
GLIBC_2.4 mprotect F
GLIBC_2.4 mq_close F
GLIBC_2.4 mq_getattr F
+GLIBC_2.4 mq_notify F
GLIBC_2.4 mq_setattr F
GLIBC_2.4 mrand48 F
GLIBC_2.4 mrand48_r F
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/librt.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/librt.abilist
index 019efdeb89..16c562cc57 100644
--- a/sysdeps/unix/sysv/linux/m68k/coldfire/librt.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/librt.abilist
@@ -1,4 +1,3 @@
-GLIBC_2.4 mq_notify F
GLIBC_2.4 mq_open F
GLIBC_2.4 mq_receive F
GLIBC_2.4 mq_send F
diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
index 2099088d48..7ada87505b 100644
--- a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
@@ -2332,6 +2332,7 @@ GLIBC_2.3.4 getipv4sourcefilter F
GLIBC_2.3.4 getsourcefilter F
GLIBC_2.3.4 mq_close F
GLIBC_2.3.4 mq_getattr F
+GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 pthread_attr_getaffinity_np F
GLIBC_2.3.4 pthread_attr_setaffinity_np F
@@ -2426,6 +2427,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/librt.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/librt.abilist
index 3618d3e898..56e82a8a53 100644
--- a/sysdeps/unix/sysv/linux/m68k/m680x0/librt.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/m680x0/librt.abilist
@@ -4,7 +4,6 @@ GLIBC_2.2 timer_delete F
GLIBC_2.2 timer_getoverrun F
GLIBC_2.2 timer_gettime F
GLIBC_2.2 timer_settime F
-GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_open F
GLIBC_2.3.4 mq_receive F
GLIBC_2.3.4 mq_send F
diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
index 480542425a..86422132f3 100644
--- a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
@@ -1361,6 +1361,7 @@ GLIBC_2.18 mprobe F
GLIBC_2.18 mprotect F
GLIBC_2.18 mq_close F
GLIBC_2.18 mq_getattr F
+GLIBC_2.18 mq_notify F
GLIBC_2.18 mq_setattr F
GLIBC_2.18 mrand48 F
GLIBC_2.18 mrand48_r F
@@ -2396,6 +2397,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/microblaze/be/librt.abilist b/sysdeps/unix/sysv/linux/microblaze/be/librt.abilist
index a03da76f76..039871a931 100644
--- a/sysdeps/unix/sysv/linux/microblaze/be/librt.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/be/librt.abilist
@@ -1,5 +1,4 @@
GLIBC_2.18 __mq_open_2 F
-GLIBC_2.18 mq_notify F
GLIBC_2.18 mq_open F
GLIBC_2.18 mq_receive F
GLIBC_2.18 mq_send F
diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
index f66c0d5641..6bab3fea30 100644
--- a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
@@ -1361,6 +1361,7 @@ GLIBC_2.18 mprobe F
GLIBC_2.18 mprotect F
GLIBC_2.18 mq_close F
GLIBC_2.18 mq_getattr F
+GLIBC_2.18 mq_notify F
GLIBC_2.18 mq_setattr F
GLIBC_2.18 mrand48 F
GLIBC_2.18 mrand48_r F
@@ -2393,6 +2394,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/microblaze/le/librt.abilist b/sysdeps/unix/sysv/linux/microblaze/le/librt.abilist
index a03da76f76..039871a931 100644
--- a/sysdeps/unix/sysv/linux/microblaze/le/librt.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/le/librt.abilist
@@ -1,5 +1,4 @@
GLIBC_2.18 __mq_open_2 F
-GLIBC_2.18 mq_notify F
GLIBC_2.18 mq_open F
GLIBC_2.18 mq_receive F
GLIBC_2.18 mq_send F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
index 173f533387..750d4e704c 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
@@ -2300,6 +2300,7 @@ GLIBC_2.3.4 getipv4sourcefilter F
GLIBC_2.3.4 getsourcefilter F
GLIBC_2.3.4 mq_close F
GLIBC_2.3.4 mq_getattr F
+GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 pthread_attr_getaffinity_np F
GLIBC_2.3.4 pthread_attr_setaffinity_np F
@@ -2391,6 +2392,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/librt.abilist b/sysdeps/unix/sysv/linux/mips/mips32/librt.abilist
index a249a4623f..7afe4e83cf 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/librt.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/librt.abilist
@@ -3,7 +3,6 @@ GLIBC_2.2 timer_delete F
GLIBC_2.2 timer_getoverrun F
GLIBC_2.2 timer_gettime F
GLIBC_2.2 timer_settime F
-GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_open F
GLIBC_2.3.4 mq_receive F
GLIBC_2.3.4 mq_send F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
index dd536cdd7a..13fc078266 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
@@ -2298,6 +2298,7 @@ GLIBC_2.3.4 getipv4sourcefilter F
GLIBC_2.3.4 getsourcefilter F
GLIBC_2.3.4 mq_close F
GLIBC_2.3.4 mq_getattr F
+GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 pthread_attr_getaffinity_np F
GLIBC_2.3.4 pthread_attr_setaffinity_np F
@@ -2389,6 +2390,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/librt.abilist b/sysdeps/unix/sysv/linux/mips/mips64/librt.abilist
index a249a4623f..7afe4e83cf 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/librt.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/librt.abilist
@@ -3,7 +3,6 @@ GLIBC_2.2 timer_delete F
GLIBC_2.2 timer_getoverrun F
GLIBC_2.2 timer_gettime F
GLIBC_2.2 timer_settime F
-GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_open F
GLIBC_2.3.4 mq_receive F
GLIBC_2.3.4 mq_send F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
index ec9ea80650..f310320334 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
@@ -2306,6 +2306,7 @@ GLIBC_2.3.4 getipv4sourcefilter F
GLIBC_2.3.4 getsourcefilter F
GLIBC_2.3.4 mq_close F
GLIBC_2.3.4 mq_getattr F
+GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 pthread_attr_getaffinity_np F
GLIBC_2.3.4 pthread_attr_setaffinity_np F
@@ -2397,6 +2398,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
index 500cf81644..ea8a8d4a4e 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
@@ -2300,6 +2300,7 @@ GLIBC_2.3.4 getipv4sourcefilter F
GLIBC_2.3.4 getsourcefilter F
GLIBC_2.3.4 mq_close F
GLIBC_2.3.4 mq_getattr F
+GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 pthread_attr_getaffinity_np F
GLIBC_2.3.4 pthread_attr_setaffinity_np F
@@ -2391,6 +2392,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/mq_notify.c b/sysdeps/unix/sysv/linux/mq_notify.c
index e22850a910..473621f590 100644
--- a/sysdeps/unix/sysv/linux/mq_notify.c
+++ b/sysdeps/unix/sysv/linux/mq_notify.c
@@ -29,7 +29,7 @@
#include <sys/socket.h>
#include <not-cancel.h>
#include <pthreadP.h>
-
+#include <shlib-compat.h>
/* Defined in the kernel headers: */
#define NOTIFY_COOKIE_LEN 32 /* Length of the cookie used. */
@@ -75,7 +75,7 @@ change_sigmask (int how, sigset_t *oss)
{
sigset_t ss;
sigfillset (&ss);
- return pthread_sigmask (how, &ss, oss);
+ return __pthread_sigmask (how, &ss, oss);
}
@@ -93,7 +93,7 @@ notification_function (void *arg)
(void) __pthread_barrier_wait (¬ify_barrier);
/* Make the thread detached. */
- (void) pthread_detach (pthread_self ());
+ (void) __pthread_detach (pthread_self ());
/* The parent thread has all signals blocked. This is probably a
bit surprising for this thread. So we unblock all of them. */
@@ -125,8 +125,8 @@ helper_thread (void *arg)
/* Just create the thread as instructed. There is no way to
report a problem with creating a thread. */
pthread_t th;
- if (__builtin_expect (pthread_create (&th, data.attr,
- notification_function, &data)
+ if (__builtin_expect (__pthread_create (&th, data.attr,
+ notification_function, &data)
== 0, 0))
/* Since we passed a pointer to DATA to the new thread we have
to wait until it is done with it. */
@@ -135,7 +135,7 @@ helper_thread (void *arg)
else if (data.raw[NOTIFY_COOKIE_LEN - 1] == NOTIFY_REMOVED)
{
/* The only state we keep is the copy of the thread attributes. */
- pthread_attr_destroy (data.attr);
+ __pthread_attr_destroy (data.attr);
free (data.attr);
}
}
@@ -143,8 +143,8 @@ helper_thread (void *arg)
}
-static void
-reset_once (void)
+void
+__mq_notify_fork_subprocess (void)
{
once = PTHREAD_ONCE_INIT;
}
@@ -172,10 +172,10 @@ init_mq_netlink (void)
{
/* Create the helper thread. */
pthread_attr_t attr;
- (void) pthread_attr_init (&attr);
- (void) pthread_attr_setdetachstate (&attr, PTHREAD_CREATE_DETACHED);
+ (void) __pthread_attr_init (&attr);
+ (void) __pthread_attr_setdetachstate (&attr, PTHREAD_CREATE_DETACHED);
/* We do not need much stack space, the bare minimum will be enough. */
- (void) pthread_attr_setstacksize (&attr, __pthread_get_minstack (&attr));
+ (void) __pthread_attr_setstacksize (&attr, __pthread_get_minstack (&attr));
/* Temporarily block all signals so that the newly created
thread inherits the mask. */
@@ -183,29 +183,13 @@ init_mq_netlink (void)
int have_no_oss = change_sigmask (SIG_BLOCK, &oss);
pthread_t th;
- err = pthread_create (&th, &attr, helper_thread, NULL);
+ err = __pthread_create (&th, &attr, helper_thread, NULL);
/* Reset the signal mask. */
if (!have_no_oss)
- pthread_sigmask (SIG_SETMASK, &oss, NULL);
-
- (void) pthread_attr_destroy (&attr);
+ __pthread_sigmask (SIG_SETMASK, &oss, NULL);
- if (err == 0)
- {
- static int added_atfork;
-
- if (added_atfork == 0
- && pthread_atfork (NULL, NULL, reset_once) != 0)
- {
- /* The child thread will call recv() which is a
- cancellation point. */
- (void) pthread_cancel (th);
- err = 1;
- }
- else
- added_atfork = 1;
- }
+ (void) __pthread_attr_destroy (&attr);
}
if (err != 0)
@@ -219,7 +203,7 @@ init_mq_netlink (void)
/* Register notification upon message arrival to an empty message queue
MQDES. */
int
-mq_notify (mqd_t mqdes, const struct sigevent *notification)
+__mq_notify (mqd_t mqdes, const struct sigevent *notification)
{
/* Make sure the type is correctly defined. */
assert (sizeof (union notify_data) == NOTIFY_COOKIE_LEN);
@@ -235,7 +219,7 @@ mq_notify (mqd_t mqdes, const struct sigevent *notification)
response. */
/* Initialize only once. */
- pthread_once (&once, init_mq_netlink);
+ __pthread_once (&once, init_mq_netlink);
/* If we cannot create the netlink socket we cannot provide
SIGEV_THREAD support. */
@@ -280,9 +264,14 @@ mq_notify (mqd_t mqdes, const struct sigevent *notification)
/* If it failed, free the allocated memory. */
if (retval != 0 && data.attr != NULL)
{
- pthread_attr_destroy (data.attr);
+ __pthread_attr_destroy (data.attr);
free (data.attr);
}
return retval;
}
+versioned_symbol (libc, __mq_notify, mq_notify, GLIBC_2_34);
+libc_hidden_ver (__mq_notify, mq_notify)
+#if OTHER_SHLIB_COMPAT (librt, GLIBC_2_3_4, GLIBC_2_34)
+compat_symbol (librt, __mq_notify, mq_notify, GLIBC_2_3_4);
+#endif
diff --git a/sysdeps/unix/sysv/linux/nios2/libc.abilist b/sysdeps/unix/sysv/linux/nios2/libc.abilist
index 5b22c05d1a..9331ef54cf 100644
--- a/sysdeps/unix/sysv/linux/nios2/libc.abilist
+++ b/sysdeps/unix/sysv/linux/nios2/libc.abilist
@@ -1404,6 +1404,7 @@ GLIBC_2.21 mprobe F
GLIBC_2.21 mprotect F
GLIBC_2.21 mq_close F
GLIBC_2.21 mq_getattr F
+GLIBC_2.21 mq_notify F
GLIBC_2.21 mq_setattr F
GLIBC_2.21 mrand48 F
GLIBC_2.21 mrand48_r F
@@ -2435,6 +2436,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/nios2/librt.abilist b/sysdeps/unix/sysv/linux/nios2/librt.abilist
index 54faf2191a..552ee96b30 100644
--- a/sysdeps/unix/sysv/linux/nios2/librt.abilist
+++ b/sysdeps/unix/sysv/linux/nios2/librt.abilist
@@ -1,5 +1,4 @@
GLIBC_2.21 __mq_open_2 F
-GLIBC_2.21 mq_notify F
GLIBC_2.21 mq_open F
GLIBC_2.21 mq_receive F
GLIBC_2.21 mq_send F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
index a4f07abfcb..f09b309ea5 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
@@ -2346,6 +2346,7 @@ GLIBC_2.3.4 longjmp F
GLIBC_2.3.4 makecontext F
GLIBC_2.3.4 mq_close F
GLIBC_2.3.4 mq_getattr F
+GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 pthread_attr_getaffinity_np F
GLIBC_2.3.4 pthread_attr_setaffinity_np F
@@ -2453,6 +2454,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/librt.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/librt.abilist
index 3618d3e898..56e82a8a53 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/librt.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/librt.abilist
@@ -4,7 +4,6 @@ GLIBC_2.2 timer_delete F
GLIBC_2.2 timer_getoverrun F
GLIBC_2.2 timer_gettime F
GLIBC_2.2 timer_settime F
-GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_open F
GLIBC_2.3.4 mq_receive F
GLIBC_2.3.4 mq_send F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
index 5f3f7e0a65..b3b4167fab 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
@@ -2379,6 +2379,7 @@ GLIBC_2.3.4 longjmp F
GLIBC_2.3.4 makecontext F
GLIBC_2.3.4 mq_close F
GLIBC_2.3.4 mq_getattr F
+GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 pthread_attr_getaffinity_np F
GLIBC_2.3.4 pthread_attr_setaffinity_np F
@@ -2486,6 +2487,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
index 45da3fd0a5..bef39a8377 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
@@ -2192,6 +2192,7 @@ GLIBC_2.3.4 getsourcefilter F
GLIBC_2.3.4 longjmp F
GLIBC_2.3.4 mq_close F
GLIBC_2.3.4 mq_getattr F
+GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 pthread_attr_getaffinity_np F
GLIBC_2.3.4 pthread_attr_setaffinity_np F
@@ -2299,6 +2300,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/librt.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/librt.abilist
index 073df9d157..a7117238c4 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/librt.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/librt.abilist
@@ -8,7 +8,6 @@ GLIBC_2.3.3 timer_delete F
GLIBC_2.3.3 timer_getoverrun F
GLIBC_2.3.3 timer_gettime F
GLIBC_2.3.3 timer_settime F
-GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_open F
GLIBC_2.3.4 mq_receive F
GLIBC_2.3.4 mq_send F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
index c21e33b002..73ad8e24f1 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
@@ -1447,6 +1447,7 @@ GLIBC_2.17 mprobe F
GLIBC_2.17 mprotect F
GLIBC_2.17 mq_close F
GLIBC_2.17 mq_getattr F
+GLIBC_2.17 mq_notify F
GLIBC_2.17 mq_setattr F
GLIBC_2.17 mrand48 F
GLIBC_2.17 mrand48_r F
@@ -2598,6 +2599,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/librt.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/librt.abilist
index 33b825d874..6cab033b12 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/librt.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/librt.abilist
@@ -1,5 +1,4 @@
GLIBC_2.17 __mq_open_2 F
-GLIBC_2.17 mq_notify F
GLIBC_2.17 mq_open F
GLIBC_2.17 mq_receive F
GLIBC_2.17 mq_send F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
index ec447c1929..793b3d7ff2 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
@@ -1292,6 +1292,7 @@ GLIBC_2.33 mprobe F
GLIBC_2.33 mprotect F
GLIBC_2.33 mq_close F
GLIBC_2.33 mq_getattr F
+GLIBC_2.33 mq_notify F
GLIBC_2.33 mq_setattr F
GLIBC_2.33 mrand48 F
GLIBC_2.33 mrand48_r F
@@ -2163,6 +2164,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/librt.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/librt.abilist
index 86456a362e..2877905086 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv32/librt.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv32/librt.abilist
@@ -1,5 +1,4 @@
GLIBC_2.33 __mq_open_2 F
-GLIBC_2.33 mq_notify F
GLIBC_2.33 mq_open F
GLIBC_2.33 mq_receive F
GLIBC_2.33 mq_send F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
index 7996483bbc..442faab40d 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
@@ -1342,6 +1342,7 @@ GLIBC_2.27 mprobe F
GLIBC_2.27 mprotect F
GLIBC_2.27 mq_close F
GLIBC_2.27 mq_getattr F
+GLIBC_2.27 mq_notify F
GLIBC_2.27 mq_setattr F
GLIBC_2.27 mrand48 F
GLIBC_2.27 mrand48_r F
@@ -2363,6 +2364,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/librt.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/librt.abilist
index e9a7d2fe8a..79c4c5870f 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv64/librt.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv64/librt.abilist
@@ -1,5 +1,4 @@
GLIBC_2.27 __mq_open_2 F
-GLIBC_2.27 mq_notify F
GLIBC_2.27 mq_open F
GLIBC_2.27 mq_receive F
GLIBC_2.27 mq_send F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
index 25dd65a559..58167f046f 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
@@ -2345,6 +2345,7 @@ GLIBC_2.3.4 getipv4sourcefilter F
GLIBC_2.3.4 getsourcefilter F
GLIBC_2.3.4 mq_close F
GLIBC_2.3.4 mq_getattr F
+GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 pthread_attr_getaffinity_np F
GLIBC_2.3.4 pthread_attr_setaffinity_np F
@@ -2451,6 +2452,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/librt.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/librt.abilist
index 3618d3e898..56e82a8a53 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/librt.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/librt.abilist
@@ -4,7 +4,6 @@ GLIBC_2.2 timer_delete F
GLIBC_2.2 timer_getoverrun F
GLIBC_2.2 timer_gettime F
GLIBC_2.2 timer_settime F
-GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_open F
GLIBC_2.3.4 mq_receive F
GLIBC_2.3.4 mq_send F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
index fafa8db1e6..8bfa413e81 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
@@ -2233,6 +2233,7 @@ GLIBC_2.3.4 getipv4sourcefilter F
GLIBC_2.3.4 getsourcefilter F
GLIBC_2.3.4 mq_close F
GLIBC_2.3.4 mq_getattr F
+GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 pthread_attr_getaffinity_np F
GLIBC_2.3.4 pthread_attr_setaffinity_np F
@@ -2336,6 +2337,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/librt.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/librt.abilist
index 6df861ffb6..7e2f744325 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/librt.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/librt.abilist
@@ -8,7 +8,6 @@ GLIBC_2.3.3 timer_delete F
GLIBC_2.3.3 timer_getoverrun F
GLIBC_2.3.3 timer_gettime F
GLIBC_2.3.3 timer_settime F
-GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_open F
GLIBC_2.3.4 mq_receive F
GLIBC_2.3.4 mq_send F
diff --git a/sysdeps/unix/sysv/linux/sh/be/libc.abilist b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
index 31731a61d8..312f0fd5fc 100644
--- a/sysdeps/unix/sysv/linux/sh/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
@@ -2212,6 +2212,7 @@ GLIBC_2.3.4 getipv4sourcefilter F
GLIBC_2.3.4 getsourcefilter F
GLIBC_2.3.4 mq_close F
GLIBC_2.3.4 mq_getattr F
+GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 pthread_attr_getaffinity_np F
GLIBC_2.3.4 pthread_attr_setaffinity_np F
@@ -2306,6 +2307,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/sh/be/librt.abilist b/sysdeps/unix/sysv/linux/sh/be/librt.abilist
index 3618d3e898..56e82a8a53 100644
--- a/sysdeps/unix/sysv/linux/sh/be/librt.abilist
+++ b/sysdeps/unix/sysv/linux/sh/be/librt.abilist
@@ -4,7 +4,6 @@ GLIBC_2.2 timer_delete F
GLIBC_2.2 timer_getoverrun F
GLIBC_2.2 timer_gettime F
GLIBC_2.2 timer_settime F
-GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_open F
GLIBC_2.3.4 mq_receive F
GLIBC_2.3.4 mq_send F
diff --git a/sysdeps/unix/sysv/linux/sh/le/libc.abilist b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
index b96bdc0a90..a857b38453 100644
--- a/sysdeps/unix/sysv/linux/sh/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
@@ -2212,6 +2212,7 @@ GLIBC_2.3.4 getipv4sourcefilter F
GLIBC_2.3.4 getsourcefilter F
GLIBC_2.3.4 mq_close F
GLIBC_2.3.4 mq_getattr F
+GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 pthread_attr_getaffinity_np F
GLIBC_2.3.4 pthread_attr_setaffinity_np F
@@ -2303,6 +2304,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/sh/le/librt.abilist b/sysdeps/unix/sysv/linux/sh/le/librt.abilist
index 3618d3e898..56e82a8a53 100644
--- a/sysdeps/unix/sysv/linux/sh/le/librt.abilist
+++ b/sysdeps/unix/sysv/linux/sh/le/librt.abilist
@@ -4,7 +4,6 @@ GLIBC_2.2 timer_delete F
GLIBC_2.2 timer_getoverrun F
GLIBC_2.2 timer_gettime F
GLIBC_2.2 timer_settime F
-GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_open F
GLIBC_2.3.4 mq_receive F
GLIBC_2.3.4 mq_send F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
index 49709c7654..e4c661632e 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
@@ -2343,6 +2343,7 @@ GLIBC_2.3.4 getipv4sourcefilter F
GLIBC_2.3.4 getsourcefilter F
GLIBC_2.3.4 mq_close F
GLIBC_2.3.4 mq_getattr F
+GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 pthread_attr_getaffinity_np F
GLIBC_2.3.4 pthread_attr_setaffinity_np F
@@ -2446,6 +2447,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/librt.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/librt.abilist
index 31311e85b9..0990953ee9 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/librt.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/librt.abilist
@@ -5,7 +5,6 @@ GLIBC_2.2 timer_getoverrun F
GLIBC_2.2 timer_gettime F
GLIBC_2.2 timer_settime F
GLIBC_2.3 __librt_version_placeholder F
-GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_open F
GLIBC_2.3.4 mq_receive F
GLIBC_2.3.4 mq_send F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
index 5c2a1a0235..ecec2ef922 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
@@ -2267,6 +2267,7 @@ GLIBC_2.3.4 getipv4sourcefilter F
GLIBC_2.3.4 getsourcefilter F
GLIBC_2.3.4 mq_close F
GLIBC_2.3.4 mq_getattr F
+GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 pthread_attr_getaffinity_np F
GLIBC_2.3.4 pthread_attr_setaffinity_np F
@@ -2358,6 +2359,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/librt.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/librt.abilist
index 29f9030371..d85884d888 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/librt.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/librt.abilist
@@ -10,7 +10,6 @@ GLIBC_2.3.3 timer_delete F
GLIBC_2.3.3 timer_getoverrun F
GLIBC_2.3.3 timer_gettime F
GLIBC_2.3.3 timer_settime F
-GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_open F
GLIBC_2.3.4 mq_receive F
GLIBC_2.3.4 mq_send F
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
index f006d8985f..4277301a21 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
@@ -2221,6 +2221,7 @@ GLIBC_2.3.4 getipv4sourcefilter F
GLIBC_2.3.4 getsourcefilter F
GLIBC_2.3.4 mq_close F
GLIBC_2.3.4 mq_getattr F
+GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 pthread_attr_getaffinity_np F
GLIBC_2.3.4 pthread_attr_setaffinity_np F
@@ -2314,6 +2315,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/librt.abilist b/sysdeps/unix/sysv/linux/x86_64/64/librt.abilist
index 0efa2e11fa..139cf285ec 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/librt.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/64/librt.abilist
@@ -8,7 +8,6 @@ GLIBC_2.3.3 timer_delete F
GLIBC_2.3.3 timer_getoverrun F
GLIBC_2.3.3 timer_gettime F
GLIBC_2.3.3 timer_settime F
-GLIBC_2.3.4 mq_notify F
GLIBC_2.3.4 mq_open F
GLIBC_2.3.4 mq_receive F
GLIBC_2.3.4 mq_send F
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
index b08c38fa7c..6d7a7f41a8 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
@@ -1366,6 +1366,7 @@ GLIBC_2.16 mprobe F
GLIBC_2.16 mprotect F
GLIBC_2.16 mq_close F
GLIBC_2.16 mq_getattr F
+GLIBC_2.16 mq_notify F
GLIBC_2.16 mq_setattr F
GLIBC_2.16 mrand48 F
GLIBC_2.16 mrand48_r F
@@ -2417,6 +2418,7 @@ GLIBC_2.34 lio_listio F
GLIBC_2.34 lio_listio64 F
GLIBC_2.34 mq_close F
GLIBC_2.34 mq_getattr F
+GLIBC_2.34 mq_notify F
GLIBC_2.34 mq_setattr F
GLIBC_2.34 mtx_destroy F
GLIBC_2.34 mtx_init F
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/librt.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/librt.abilist
index dc15c9057f..db976a6c97 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/librt.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/librt.abilist
@@ -1,5 +1,4 @@
GLIBC_2.16 __mq_open_2 F
-GLIBC_2.16 mq_notify F
GLIBC_2.16 mq_open F
GLIBC_2.16 mq_receive F
GLIBC_2.16 mq_send F
--
2.31.1
More information about the Libc-alpha
mailing list