From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-qk1-x734.google.com (mail-qk1-x734.google.com [IPv6:2607:f8b0:4864:20::734]) by sourceware.org (Postfix) with ESMTPS id 2473A385782B for ; Thu, 24 Jun 2021 14:05:34 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 2473A385782B Received: by mail-qk1-x734.google.com with SMTP id bm25so14907797qkb.0 for ; Thu, 24 Jun 2021 07:05:34 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=xpsPuuGoLtZQUm3U5YxSdCr7ka6uesQqpKSsoK5mU50=; b=CYoMKN3Rg5GbDDrNE6FvK9NPO1QFD8BFRggfENN3c3ZRzmi185a6NdcXIJbik9JX5b AAbITapUhYEk+EJfTqkJbd8BfZrWJCr0o9EpSvE2zqeu9RKOhSXde9OTxwUYSPlkN6Wl zAkJIrrr8aifHV/jQ9w/ak6m5rz4FBrl2gOWdSpxpBctz8d9fI0Sz8ABj5ADqMM12nxg pVEzHU37ZGj/a8J2006Ns19NlGFkEFZm6TLH29iTyew++/xqHscp9nktbv2hCYpkSKmm dB8I6lH8rt8Eo7RMmWfFvpVLckO9QILBG9s1S8EGYRklEsufE9z/WZ8/Tw6P8NKQ7TNW 1Xng== X-Gm-Message-State: AOAM5332h9MuTHM1LxujWvPXWtmDbSCuSsLvdtRk1BO/OPIso5oh65Bp Q6e9le9sBmDXvAMejvFpe5rpycHvHhwusA== X-Google-Smtp-Source: ABdhPJxmpZemuDp0LUVy0Pv0yh3e1tqZZzRQuUQ+5WDNTasW6dJH330jjLO9oXtIJyD1Tjr1K4d+mw== X-Received: by 2002:a37:591:: with SMTP id 139mr5821718qkf.18.1624543533408; Thu, 24 Jun 2021 07:05:33 -0700 (PDT) Received: from [192.168.1.108] ([177.194.59.218]) by smtp.gmail.com with ESMTPSA id g11sm2585824qko.58.2021.06.24.07.05.31 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 24 Jun 2021 07:05:33 -0700 (PDT) Subject: Re: [PATCH 23/34] Linux: Move mq_notify from librt to libc To: Florian Weimer , libc-alpha@sourceware.org References: <527ae04852e09b47f6d8bef8a7bdb9c11f175fd4.1623956057.git.fweimer@redhat.com> From: Adhemerval Zanella Message-ID: Date: Thu, 24 Jun 2021 11:05:30 -0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 MIME-Version: 1.0 In-Reply-To: <527ae04852e09b47f6d8bef8a7bdb9c11f175fd4.1623956057.git.fweimer@redhat.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-12.2 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, NICE_REPLY_A, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Jun 2021 14:05:39 -0000 On 17/06/2021 15:58, Florian Weimer via Libc-alpha wrote: > 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. LGTM, thanks. Some minor nits below. Reviewed-by: Adhemerva Zanella > --- > 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 + > .../sysv/linux/mips/mips64/n32/libc.abilist | 2 + > .../sysv/linux/mips/mips64/n32/librt.abilist | 1 - > .../sysv/linux/mips/mips64/n64/libc.abilist | 2 + > .../sysv/linux/mips/mips64/n64/librt.abilist | 1 - > 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 - > 68 files changed, 100 insertions(+), 65 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 Ok. > diff --git a/include/pthread.h b/include/pthread.h > index 1158919247..819bf3f235 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)); Ok. > diff --git a/rt/Makefile b/rt/Makefile > index e9b68f0274..838e67b229 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 \ Ok. > 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; Ok. > 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 > #include > #include > +#include > > 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); > } Ok. > diff --git a/sysdeps/unix/sysv/linux/aarch64/libc.abilist b/sysdeps/unix/sysv/linux/aarch64/libc.abilist > index c6b225527c..98dd344aaf 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 > @@ -2404,6 +2405,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 4930bfef60..5026e54d51 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 > @@ -2499,6 +2500,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 78a01ca136..f677395bd2 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 > @@ -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/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 4ad531fb76..38e6fc61d4 100644 > --- a/sysdeps/unix/sysv/linux/arm/be/libc.abilist > +++ b/sysdeps/unix/sysv/linux/arm/be/libc.abilist > @@ -315,6 +315,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 > @@ -1731,6 +1732,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 ba9f5f6422..6d3cb7c1fa 100644 > --- a/sysdeps/unix/sysv/linux/arm/be/librt.abilist > +++ b/sysdeps/unix/sysv/linux/arm/be/librt.abilist > @@ -2,7 +2,6 @@ GLIBC_2.34 __mq_timedreceive_time64 F > GLIBC_2.34 __mq_timedsend_time64 F > GLIBC_2.34 __timer_gettime64 F > GLIBC_2.34 __timer_settime64 F > -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 aae2e215f3..c31f58229a 100644 > --- a/sysdeps/unix/sysv/linux/arm/le/libc.abilist > +++ b/sysdeps/unix/sysv/linux/arm/le/libc.abilist > @@ -312,6 +312,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 > @@ -1728,6 +1729,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 ba9f5f6422..6d3cb7c1fa 100644 > --- a/sysdeps/unix/sysv/linux/arm/le/librt.abilist > +++ b/sysdeps/unix/sysv/linux/arm/le/librt.abilist > @@ -2,7 +2,6 @@ GLIBC_2.34 __mq_timedreceive_time64 F > GLIBC_2.34 __mq_timedsend_time64 F > GLIBC_2.34 __timer_gettime64 F > GLIBC_2.34 __timer_settime64 F > -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 0bbe74a51a..bd0cec183d 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 > @@ -2424,6 +2425,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 1ffc068f62..7c20548140 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 f96ed60028..e089d91a80 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 > @@ -2378,6 +2379,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 d208e7b7a8..c4164f4149 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 a724074718..d04f1e1a95 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 > @@ -2562,6 +2563,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 d208e7b7a8..c4164f4149 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 3b5c72f307..c7569a5138 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 > @@ -2337,6 +2338,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 85de809b2d..57139d935a 100644 > --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist > +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist > @@ -316,6 +316,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 > @@ -1715,6 +1716,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 ba9f5f6422..6d3cb7c1fa 100644 > --- a/sysdeps/unix/sysv/linux/m68k/coldfire/librt.abilist > +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/librt.abilist > @@ -2,7 +2,6 @@ GLIBC_2.34 __mq_timedreceive_time64 F > GLIBC_2.34 __mq_timedsend_time64 F > GLIBC_2.34 __timer_gettime64 F > GLIBC_2.34 __timer_settime64 F > -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 a9abdfa950..5fd9bf57ec 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 > @@ -2505,6 +2506,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 d208e7b7a8..c4164f4149 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 6bf22e63e3..434b3f6844 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 > @@ -2475,6 +2476,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 a8bbeb6a20..f82d9ba705 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 4e211638c9..1d97080a9c 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 > @@ -2472,6 +2473,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 a8bbeb6a20..f82d9ba705 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 96d2e57a71..d43b66902d 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 > @@ -2470,6 +2471,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 7704fd1722..12c3cbae0d 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 3f8736354d..86dfc85225 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 > @@ -2468,6 +2469,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/n32/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist > index ab6ca602b9..3314c50b3c 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 > @@ -2476,6 +2477,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/n32/librt.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/librt.abilist > index 7704fd1722..12c3cbae0d 100644 > --- a/sysdeps/unix/sysv/linux/mips/mips64/n32/librt.abilist > +++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/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/n64/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist > index 328abb0e02..a23ebf24a8 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 > @@ -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/mips/mips64/n64/librt.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/librt.abilist > index a249a4623f..7afe4e83cf 100644 > --- a/sysdeps/unix/sysv/linux/mips/mips64/n64/librt.abilist > +++ b/sysdeps/unix/sysv/linux/mips/mips64/n64/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 Ok. > diff --git a/sysdeps/unix/sysv/linux/mq_notify.c b/sysdeps/unix/sysv/linux/mq_notify.c > index e22850a910..9a68d9534d 100644 > --- a/sysdeps/unix/sysv/linux/mq_notify.c > +++ b/sysdeps/unix/sysv/linux/mq_notify.c > @@ -29,7 +29,7 @@ > #include > #include > #include > - > +#include > > /* 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); > } > > Ok. > @@ -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 ()); > No need the extra cast here. > /* 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. */ Use __glibc_likely. > @@ -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. */ No need the casts here. > @@ -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) Ok. > @@ -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 Ok. > diff --git a/sysdeps/unix/sysv/linux/nios2/libc.abilist b/sysdeps/unix/sysv/linux/nios2/libc.abilist > index b8dd80465f..50b5f57efc 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 > @@ -2514,6 +2515,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 64a169169f..0ad1b47423 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 04a263f810..c8b663ff2f 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 > @@ -2532,6 +2533,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 d208e7b7a8..c4164f4149 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 9e8043323c..551af732bb 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 > @@ -2565,6 +2566,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 21e7cb9a28..a79b8863e1 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 > @@ -2301,6 +2302,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 5487741113..89293145e4 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 > @@ -2600,6 +2601,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 ac6d6b1200..da03d7e3b4 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 > @@ -2165,6 +2166,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 10607eff2d..e1ff263953 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 > @@ -2365,6 +2366,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 6fc716311f..b1af366553 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 > @@ -2530,6 +2531,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 d208e7b7a8..c4164f4149 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 d8d502deb6..70322f5969 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 > @@ -2338,6 +2339,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 bbeb8d248b..57dc4db1e7 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 > @@ -2385,6 +2386,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 d208e7b7a8..c4164f4149 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 1cbeb0474a..d00a7d6034 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 > @@ -2382,6 +2383,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 d208e7b7a8..c4164f4149 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 8d7b102a04..e25501e4c4 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 > @@ -2525,6 +2526,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 2da8518d03..19e98aae24 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 66a6a37699..cdec31d161 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 > @@ -2360,6 +2361,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 44c6b63d14..1f16f15c1b 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 > @@ -2316,6 +2317,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 3dba64549e..ac010952fe 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 > @@ -2419,6 +2420,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 > Ok.