From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-qk1-x72d.google.com (mail-qk1-x72d.google.com [IPv6:2607:f8b0:4864:20::72d]) by sourceware.org (Postfix) with ESMTPS id 503F1385BF9E for ; Wed, 17 Mar 2021 13:37:38 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 503F1385BF9E Received: by mail-qk1-x72d.google.com with SMTP id f124so38830362qkj.5 for ; Wed, 17 Mar 2021 06:37:38 -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:from:to:references:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=utLsGlrpp7QOp1LfVTBCil9pSQl67ZEciMEQgdPNrCc=; b=j63efGhA1f5U8Qt9mREC3igXQgj/vGq/HgL0fNtxijkxEfMacIrrHFxHHR6qOMu9cy kJnu/NWWINKJnrQDK8GSscwucPW84XRJ1ZM+sHq/TxTZk7WT7Ku1M+ONtqvxjDS6c/jY OpwR8gzUEBsc3UO6srs5P1yUf4uaF6f0A/kWfj9aLxgBC2+RGM0IwXqen8lgQFBAYdGz YdP6Lg5tJKfCVdCSj40pCeelS67DFXljjvy3RpDzPf5w+lsfkkaJS5Rjh9gh1V6xdP4v qAJTAlXHa61OzsFhypDgke7U6wh1qgf7jHVhqtExYQ8gnh14a/iQOTH/iDNYjxyMpIAb XqoQ== X-Gm-Message-State: AOAM531i1Ugoh5SgfW8wyl+ugai2IN6fV/25STGmkGhjwj8+0C13XD3W L2ndrYZi56yh/CUydmveslnvQA== X-Google-Smtp-Source: ABdhPJy80qSeZRAg/emcr0iOZdz3DK74v1f5fT3p9HaszTrCXTZnFBU9QAq0ln2abfg1uTF0wHUL2w== X-Received: by 2002:a37:a845:: with SMTP id r66mr4722261qke.89.1615988257035; Wed, 17 Mar 2021 06:37:37 -0700 (PDT) Received: from [192.168.1.4] ([177.194.48.209]) by smtp.googlemail.com with ESMTPSA id f9sm17468867qkk.115.2021.03.17.06.37.34 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 17 Mar 2021 06:37:35 -0700 (PDT) Subject: Re: [PATCH v3 08/37] nptl: Move pthread_once and __pthread_once into libc From: Adhemerval Zanella To: libc-alpha@sourceware.org, Florian Weimer References: <3ab7ccc92585d17c3171cf375605b53252d6b9a9.1615914631.git.fweimer@redhat.com> <41a88cab-808e-c10e-a975-41cdd252c299@linaro.org> Message-ID: <5405bbad-3c70-4435-8815-59e84738c3fb@linaro.org> Date: Wed, 17 Mar 2021 10:37:33 -0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.7.1 MIME-Version: 1.0 In-Reply-To: <41a88cab-808e-c10e-a975-41cdd252c299@linaro.org> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-13.4 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: Wed, 17 Mar 2021 13:37:45 -0000 On 17/03/2021 10:30, Adhemerval Zanella wrote: > > > On 16/03/2021 14:28, Florian Weimer via Libc-alpha wrote: >> And also the fork generation counter, __fork_generation. This >> eliminates the need for __fork_generation_pointer. >> >> call_once remains in libpthread and calls the exported __pthread_once >> symbol. >> >> pthread_once and __pthread_once have been moved using >> scripts/move-symbol-to-libc.py. > > LGTM, I just don't see why we need a GLIBC_2.34 __pthread_once. Ok, it is called by call_once. I wonder if we could make a GLIBC_PRIVATE instead so we can remove it once we moce call_once to libc. > > Reviewed-by: Adhemerval Zanella > >> --- >> nptl/Makefile | 2 +- >> nptl/Versions | 6 ++++-- >> nptl/libc_pthread_init.c | 8 +------ >> nptl/nptl-init.c | 4 +--- >> nptl/pthreadP.h | 8 +++---- >> nptl/pthread_once.c | 21 +++++++++++++++---- >> sysdeps/nptl/fork.c | 3 +-- >> sysdeps/nptl/fork.h | 3 --- >> sysdeps/nptl/libc-lockP.h | 13 ++---------- >> sysdeps/nptl/pthread-functions.h | 1 - >> sysdeps/unix/sysv/linux/aarch64/libc.abilist | 4 ++++ >> .../sysv/linux/aarch64/libpthread.abilist | 2 -- >> sysdeps/unix/sysv/linux/alpha/libc.abilist | 4 ++++ >> .../unix/sysv/linux/alpha/libpthread.abilist | 2 -- >> sysdeps/unix/sysv/linux/arc/libc.abilist | 4 ++++ >> .../unix/sysv/linux/arc/libpthread.abilist | 2 -- >> sysdeps/unix/sysv/linux/arm/be/libc.abilist | 4 ++++ >> .../unix/sysv/linux/arm/be/libpthread.abilist | 2 -- >> sysdeps/unix/sysv/linux/arm/le/libc.abilist | 4 ++++ >> .../unix/sysv/linux/arm/le/libpthread.abilist | 2 -- >> sysdeps/unix/sysv/linux/csky/libc.abilist | 4 ++++ >> .../unix/sysv/linux/csky/libpthread.abilist | 2 -- >> sysdeps/unix/sysv/linux/hppa/libc.abilist | 4 ++++ >> .../unix/sysv/linux/hppa/libpthread.abilist | 2 -- >> sysdeps/unix/sysv/linux/i386/libc.abilist | 4 ++++ >> .../unix/sysv/linux/i386/libpthread.abilist | 2 -- >> sysdeps/unix/sysv/linux/ia64/libc.abilist | 4 ++++ >> .../unix/sysv/linux/ia64/libpthread.abilist | 2 -- >> .../sysv/linux/m68k/coldfire/libc.abilist | 4 ++++ >> .../linux/m68k/coldfire/libpthread.abilist | 2 -- >> .../unix/sysv/linux/m68k/m680x0/libc.abilist | 4 ++++ >> .../sysv/linux/m68k/m680x0/libpthread.abilist | 2 -- >> .../sysv/linux/microblaze/be/libc.abilist | 4 ++++ >> .../linux/microblaze/be/libpthread.abilist | 2 -- >> .../sysv/linux/microblaze/le/libc.abilist | 4 ++++ >> .../linux/microblaze/le/libpthread.abilist | 2 -- >> .../sysv/linux/mips/mips32/fpu/libc.abilist | 4 ++++ >> .../sysv/linux/mips/mips32/libpthread.abilist | 2 -- >> .../sysv/linux/mips/mips32/nofpu/libc.abilist | 4 ++++ >> .../sysv/linux/mips/mips64/libpthread.abilist | 2 -- >> .../sysv/linux/mips/mips64/n32/libc.abilist | 4 ++++ >> .../sysv/linux/mips/mips64/n64/libc.abilist | 4 ++++ >> sysdeps/unix/sysv/linux/nios2/libc.abilist | 4 ++++ >> .../unix/sysv/linux/nios2/libpthread.abilist | 2 -- >> .../linux/powerpc/powerpc32/fpu/libc.abilist | 4 ++++ >> .../powerpc/powerpc32/libpthread.abilist | 2 -- >> .../powerpc/powerpc32/nofpu/libc.abilist | 4 ++++ >> .../linux/powerpc/powerpc64/be/libc.abilist | 4 ++++ >> .../powerpc/powerpc64/be/libpthread.abilist | 2 -- >> .../linux/powerpc/powerpc64/le/libc.abilist | 4 ++++ >> .../powerpc/powerpc64/le/libpthread.abilist | 2 -- >> .../unix/sysv/linux/riscv/rv32/libc.abilist | 4 ++++ >> .../sysv/linux/riscv/rv32/libpthread.abilist | 2 -- >> .../unix/sysv/linux/riscv/rv64/libc.abilist | 4 ++++ >> .../sysv/linux/riscv/rv64/libpthread.abilist | 2 -- >> .../unix/sysv/linux/s390/s390-32/libc.abilist | 4 ++++ >> .../linux/s390/s390-32/libpthread.abilist | 2 -- >> .../unix/sysv/linux/s390/s390-64/libc.abilist | 4 ++++ >> .../linux/s390/s390-64/libpthread.abilist | 2 -- >> sysdeps/unix/sysv/linux/sh/be/libc.abilist | 4 ++++ >> .../unix/sysv/linux/sh/be/libpthread.abilist | 2 -- >> sysdeps/unix/sysv/linux/sh/le/libc.abilist | 4 ++++ >> .../unix/sysv/linux/sh/le/libpthread.abilist | 2 -- >> .../sysv/linux/sparc/sparc32/libc.abilist | 4 ++++ >> .../linux/sparc/sparc32/libpthread.abilist | 2 -- >> .../sysv/linux/sparc/sparc64/libc.abilist | 4 ++++ >> .../linux/sparc/sparc64/libpthread.abilist | 2 -- >> .../unix/sysv/linux/x86_64/64/libc.abilist | 4 ++++ >> .../sysv/linux/x86_64/64/libpthread.abilist | 2 -- >> .../unix/sysv/linux/x86_64/x32/libc.abilist | 4 ++++ >> .../sysv/linux/x86_64/x32/libpthread.abilist | 2 -- >> 71 files changed, 158 insertions(+), 97 deletions(-) >> >> diff --git a/nptl/Makefile b/nptl/Makefile >> index 8847c4dd49..910d8c7ebf 100644 >> --- a/nptl/Makefile >> +++ b/nptl/Makefile >> @@ -76,6 +76,7 @@ routines = \ >> pthread_getattr_np \ >> pthread_getschedparam \ >> pthread_mutex_consistent \ >> + pthread_once \ >> pthread_self \ >> pthread_setschedparam \ >> pthread_sigmask \ >> @@ -179,7 +180,6 @@ libpthread-routines = \ >> pthread_mutexattr_setpshared \ >> pthread_mutexattr_setrobust \ >> pthread_mutexattr_settype \ >> - pthread_once \ >> pthread_rwlock_clockrdlock \ >> pthread_rwlock_clockwrlock \ >> pthread_rwlock_destroy \ > > Ok. > >> diff --git a/nptl/Versions b/nptl/Versions >> index 8fa0d178db..49133585e4 100644 >> --- a/nptl/Versions >> +++ b/nptl/Versions >> @@ -1,5 +1,6 @@ >> libc { >> GLIBC_2.0 { >> + __pthread_once; >> _pthread_cleanup_pop; >> _pthread_cleanup_pop_restore; >> _pthread_cleanup_push; >> @@ -31,6 +32,7 @@ libc { >> pthread_mutex_init; >> pthread_mutex_lock; >> pthread_mutex_unlock; >> + pthread_once; >> pthread_self; >> pthread_setcancelstate; >> pthread_setcanceltype; >> @@ -83,7 +85,9 @@ libc { >> } >> GLIBC_2.34 { >> __pthread_cleanup_routine; >> + __pthread_once; > > Why do we need the __pthread_once for 2.34 as well? > >> pthread_mutex_consistent; >> + pthread_once; >> } >> GLIBC_PRIVATE { >> __futex_abstimed_wait64; >> @@ -141,7 +145,6 @@ libpthread { >> __pthread_mutexattr_destroy; >> __pthread_mutexattr_init; >> __pthread_mutexattr_settype; >> - __pthread_once; >> __pthread_setspecific; >> __read; >> __send; >> @@ -184,7 +187,6 @@ libpthread { >> pthread_mutexattr_getkind_np; >> pthread_mutexattr_init; >> pthread_mutexattr_setkind_np; >> - pthread_once; >> pthread_setcancelstate; >> pthread_setcanceltype; >> pthread_setspecific; > > Ok. > >> diff --git a/nptl/libc_pthread_init.c b/nptl/libc_pthread_init.c >> index 0757f92cd2..3ac54aae13 100644 >> --- a/nptl/libc_pthread_init.c >> +++ b/nptl/libc_pthread_init.c >> @@ -28,9 +28,6 @@ >> #include >> >> >> -unsigned long int *__fork_generation_pointer; >> - >> - >> #ifdef TLS_MULTIPLE_THREADS_IN_TCB >> void >> #else >> @@ -38,12 +35,9 @@ extern int __libc_multiple_threads attribute_hidden; >> >> int * >> #endif >> -__libc_pthread_init (unsigned long int *ptr, void (*reclaim) (void), >> +__libc_pthread_init (void (*reclaim) (void), >> const struct pthread_functions *functions) >> { >> - /* Remember the pointer to the generation counter in libpthread. */ >> - __fork_generation_pointer = ptr; >> - >> /* Called by a child after fork. */ >> __register_atfork (NULL, NULL, reclaim, NULL); >> > > Ok. > >> diff --git a/nptl/nptl-init.c b/nptl/nptl-init.c >> index 41527dcad1..c2e02b1bf2 100644 >> --- a/nptl/nptl-init.c >> +++ b/nptl/nptl-init.c >> @@ -88,7 +88,6 @@ static const struct pthread_functions pthread_functions = >> .ptr_pthread_mutex_unlock = __pthread_mutex_unlock, >> .ptr___pthread_setcancelstate = __pthread_setcancelstate, >> .ptr_pthread_setcanceltype = __pthread_setcanceltype, >> - .ptr___pthread_once = __pthread_once, >> .ptr___pthread_rwlock_rdlock = __pthread_rwlock_rdlock, >> .ptr___pthread_rwlock_wrlock = __pthread_rwlock_wrlock, >> .ptr___pthread_rwlock_unlock = __pthread_rwlock_unlock, >> @@ -334,8 +333,7 @@ __pthread_initialize_minimal_internal (void) >> #ifndef TLS_MULTIPLE_THREADS_IN_TCB >> __libc_multiple_threads_ptr = >> #endif >> - __libc_pthread_init (&__fork_generation, __reclaim_stacks, >> - ptr_pthread_functions); >> + __libc_pthread_init (__reclaim_stacks, ptr_pthread_functions); >> >> #if HAVE_TUNABLES >> __pthread_tunables_init (); > > Ok. > >> diff --git a/nptl/pthreadP.h b/nptl/pthreadP.h >> index 8f3d2cc8c9..9f2990217c 100644 >> --- a/nptl/pthreadP.h >> +++ b/nptl/pthreadP.h >> @@ -355,12 +355,10 @@ hidden_proto (__nptl_death_event) >> >> /* Register the generation counter in the libpthread with the libc. */ >> #ifdef TLS_MULTIPLE_THREADS_IN_TCB >> -extern void __libc_pthread_init (unsigned long int *ptr, >> - void (*reclaim) (void), >> +extern void __libc_pthread_init (void (*reclaim) (void), >> const struct pthread_functions *functions); >> #else >> -extern int *__libc_pthread_init (unsigned long int *ptr, >> - void (*reclaim) (void), >> +extern int *__libc_pthread_init (void (*reclaim) (void), >> const struct pthread_functions *functions); >> >> /* Variable set to a nonzero value either if more than one thread runs or ran, > > Ok. > >> @@ -519,6 +517,7 @@ extern void *__pthread_getspecific (pthread_key_t key); >> extern int __pthread_setspecific (pthread_key_t key, const void *value); >> extern int __pthread_once (pthread_once_t *once_control, >> void (*init_routine) (void)); >> +libc_hidden_proto (__pthread_once) >> extern int __pthread_atfork (void (*prepare) (void), void (*parent) (void), >> void (*child) (void)); >> extern pthread_t __pthread_self (void); >> @@ -551,7 +550,6 @@ hidden_proto (__pthread_rwlock_unlock) >> hidden_proto (__pthread_key_create) >> hidden_proto (__pthread_getspecific) >> hidden_proto (__pthread_setspecific) >> -hidden_proto (__pthread_once) >> hidden_proto (__pthread_setcancelstate) >> hidden_proto (__pthread_testcancel) >> hidden_proto (__pthread_mutexattr_init) > > Ok. > >> diff --git a/nptl/pthread_once.c b/nptl/pthread_once.c >> index 7645da222a..7335150485 100644 >> --- a/nptl/pthread_once.c >> +++ b/nptl/pthread_once.c >> @@ -19,7 +19,9 @@ >> #include "pthreadP.h" >> #include >> #include >> - >> +#include >> +#include >> +#include >> >> unsigned long int __fork_generation attribute_hidden; >> >> @@ -132,7 +134,7 @@ __pthread_once_slow (pthread_once_t *once_control, void (*init_routine) (void)) >> } >> >> int >> -__pthread_once (pthread_once_t *once_control, void (*init_routine) (void)) >> +__pthread_once_1 (pthread_once_t *once_control, void (*init_routine) (void)) >> { >> /* Fast path. See __pthread_once_slow. */ >> int val; >> @@ -142,5 +144,16 @@ __pthread_once (pthread_once_t *once_control, void (*init_routine) (void)) >> else >> return __pthread_once_slow (once_control, init_routine); >> } >> -weak_alias (__pthread_once, pthread_once) >> -hidden_def (__pthread_once) >> +versioned_symbol (libc, __pthread_once_1, __pthread_once, GLIBC_2_34); >> +libc_hidden_ver (__pthread_once_1, __pthread_once) >> + >> +/* Several aliases for setting different symbol versions. */ >> +strong_alias (__pthread_once_1, __pthread_once_2) >> +strong_alias (__pthread_once_1, __pthread_once_3) >> +strong_alias (__pthread_once_1, __pthread_once_4) >> + >> +versioned_symbol (libc, __pthread_once_2, pthread_once, GLIBC_2_34); >> +#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_34) >> +compat_symbol (libc, __pthread_once_3, __pthread_once, GLIBC_2_0); >> +compat_symbol (libc, __pthread_once_4, pthread_once, GLIBC_2_0); >> +#endif > > Ok. > >> diff --git a/sysdeps/nptl/fork.c b/sysdeps/nptl/fork.c >> index f78267b68c..ffc8f9d041 100644 >> --- a/sysdeps/nptl/fork.c >> +++ b/sysdeps/nptl/fork.c >> @@ -88,8 +88,7 @@ __libc_fork (void) >> struct pthread *self = THREAD_SELF; >> >> /* See __pthread_once. */ >> - if (__fork_generation_pointer != NULL) >> - *__fork_generation_pointer += __PTHREAD_ONCE_FORK_GEN_INCR; >> + __fork_generation += __PTHREAD_ONCE_FORK_GEN_INCR; >> >> /* Initialize the robust mutex list setting in the kernel which has >> been reset during the fork. We do not check for errors because if > > Ok. > >> diff --git a/sysdeps/nptl/fork.h b/sysdeps/nptl/fork.h >> index 5246754290..a2a1ad8265 100644 >> --- a/sysdeps/nptl/fork.h >> +++ b/sysdeps/nptl/fork.h >> @@ -21,6 +21,3 @@ >> >> /* The fork generation counter, defined in libpthread. */ >> extern unsigned long int __fork_generation attribute_hidden; >> - >> -/* Pointer to the fork generation counter in the thread library. */ >> -extern unsigned long int *__fork_generation_pointer attribute_hidden; > > Ok. > >> diff --git a/sysdeps/nptl/libc-lockP.h b/sysdeps/nptl/libc-lockP.h >> index 1a861b0d3f..9550bc37e4 100644 >> --- a/sysdeps/nptl/libc-lockP.h >> +++ b/sysdeps/nptl/libc-lockP.h >> @@ -238,15 +238,7 @@ _Static_assert (LLL_LOCK_INITIALIZER == 0, "LLL_LOCK_INITIALIZER != 0"); >> >> /* Call handler iff the first call. */ >> #define __libc_once(ONCE_CONTROL, INIT_FUNCTION) \ >> - do { \ >> - if (PTFAVAIL (__pthread_once)) \ >> - __libc_ptf_call_always (__pthread_once, (&(ONCE_CONTROL), \ >> - INIT_FUNCTION)); \ >> - else if ((ONCE_CONTROL) == PTHREAD_ONCE_INIT) { \ >> - INIT_FUNCTION (); \ >> - (ONCE_CONTROL) |= 2; \ >> - } \ >> - } while (0) >> + __pthread_once (&(ONCE_CONTROL), INIT_FUNCTION) >> >> /* Get once control variable. */ >> #define __libc_once_get(ONCE_CONTROL) ((ONCE_CONTROL) != PTHREAD_ONCE_INIT) > > Ok. > >> @@ -342,6 +334,7 @@ extern void *__pthread_getspecific (pthread_key_t __key); >> >> extern int __pthread_once (pthread_once_t *__once_control, >> void (*__init_routine) (void)); >> +libc_hidden_proto (__pthread_once) >> >> extern int __pthread_atfork (void (*__prepare) (void), >> void (*__parent) (void), >> @@ -372,7 +365,6 @@ weak_extern (__pthread_rwlock_unlock) >> weak_extern (__pthread_key_create) >> weak_extern (__pthread_setspecific) >> weak_extern (__pthread_getspecific) >> -weak_extern (__pthread_once) >> weak_extern (__pthread_initialize) >> weak_extern (__pthread_atfork) >> weak_extern (__pthread_setcancelstate) >> @@ -394,7 +386,6 @@ weak_extern (__pthread_setcancelstate) >> # pragma weak __pthread_key_create >> # pragma weak __pthread_setspecific >> # pragma weak __pthread_getspecific >> -# pragma weak __pthread_once >> # pragma weak __pthread_initialize >> # pragma weak __pthread_atfork >> # pragma weak __pthread_setcancelstate > > Ok. > >> diff --git a/sysdeps/nptl/pthread-functions.h b/sysdeps/nptl/pthread-functions.h >> index 1bbe609598..6ef7602cb9 100644 >> --- a/sysdeps/nptl/pthread-functions.h >> +++ b/sysdeps/nptl/pthread-functions.h >> @@ -49,7 +49,6 @@ struct pthread_functions >> int (*ptr_pthread_mutex_unlock) (pthread_mutex_t *); >> int (*ptr___pthread_setcancelstate) (int, int *); >> int (*ptr_pthread_setcanceltype) (int, int *); >> - int (*ptr___pthread_once) (pthread_once_t *, void (*) (void)); >> int (*ptr___pthread_rwlock_rdlock) (pthread_rwlock_t *); >> int (*ptr___pthread_rwlock_wrlock) (pthread_rwlock_t *); >> int (*ptr___pthread_rwlock_unlock) (pthread_rwlock_t *); > > Ok. > >> diff --git a/sysdeps/unix/sysv/linux/aarch64/libc.abilist b/sysdeps/unix/sysv/linux/aarch64/libc.abilist >> index a585f7d30d..8a11066f9e 100644 >> --- a/sysdeps/unix/sysv/linux/aarch64/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/aarch64/libc.abilist >> @@ -339,6 +339,7 @@ GLIBC_2.17 __profile_frequency F >> GLIBC_2.17 __progname D 0x8 >> GLIBC_2.17 __progname_full D 0x8 >> GLIBC_2.17 __pthread_cleanup_routine F >> +GLIBC_2.17 __pthread_once F >> GLIBC_2.17 __ptsname_r_chk F >> GLIBC_2.17 __pwrite64 F >> GLIBC_2.17 __rawmemchr F >> @@ -1453,6 +1454,7 @@ GLIBC_2.17 pthread_mutex_destroy F >> GLIBC_2.17 pthread_mutex_init F >> GLIBC_2.17 pthread_mutex_lock F >> GLIBC_2.17 pthread_mutex_unlock F >> +GLIBC_2.17 pthread_once F >> GLIBC_2.17 pthread_self F >> GLIBC_2.17 pthread_setcancelstate F >> GLIBC_2.17 pthread_setcanceltype F >> @@ -2180,4 +2182,6 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> diff --git a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist >> index 884d97efca..a57e807cd0 100644 >> --- a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist >> @@ -23,7 +23,6 @@ GLIBC_2.17 __pthread_mutex_unlock F >> GLIBC_2.17 __pthread_mutexattr_destroy F >> GLIBC_2.17 __pthread_mutexattr_init F >> GLIBC_2.17 __pthread_mutexattr_settype F >> -GLIBC_2.17 __pthread_once F >> GLIBC_2.17 __pthread_register_cancel F >> GLIBC_2.17 __pthread_register_cancel_defer F >> GLIBC_2.17 __pthread_rwlock_destroy F >> @@ -120,7 +119,6 @@ GLIBC_2.17 pthread_mutexattr_setpshared F >> GLIBC_2.17 pthread_mutexattr_setrobust F >> GLIBC_2.17 pthread_mutexattr_setrobust_np F >> GLIBC_2.17 pthread_mutexattr_settype F >> -GLIBC_2.17 pthread_once F >> GLIBC_2.17 pthread_rwlock_destroy F >> GLIBC_2.17 pthread_rwlock_init F >> GLIBC_2.17 pthread_rwlock_rdlock F >> diff --git a/sysdeps/unix/sysv/linux/alpha/libc.abilist b/sysdeps/unix/sysv/linux/alpha/libc.abilist >> index c9ac935ccf..b62c855163 100644 >> --- a/sysdeps/unix/sysv/linux/alpha/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/alpha/libc.abilist >> @@ -188,6 +188,7 @@ GLIBC_2.0 __printf_fp F >> GLIBC_2.0 __profile_frequency F >> GLIBC_2.0 __progname D 0x8 >> GLIBC_2.0 __progname_full D 0x8 >> +GLIBC_2.0 __pthread_once F >> GLIBC_2.0 __rcmd_errstr D 0x8 >> GLIBC_2.0 __read F >> GLIBC_2.0 __realloc_hook D 0x8 >> @@ -891,6 +892,7 @@ GLIBC_2.0 pthread_mutex_destroy F >> GLIBC_2.0 pthread_mutex_init F >> GLIBC_2.0 pthread_mutex_lock F >> GLIBC_2.0 pthread_mutex_unlock F >> +GLIBC_2.0 pthread_once F >> GLIBC_2.0 pthread_self F >> GLIBC_2.0 pthread_setcancelstate F >> GLIBC_2.0 pthread_setcanceltype F >> @@ -2261,7 +2263,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 _IO_fprintf F >> GLIBC_2.4 _IO_printf F >> GLIBC_2.4 _IO_sprintf F >> diff --git a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist >> index e17b5183ef..059ae76802 100644 >> --- a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist >> @@ -18,7 +18,6 @@ GLIBC_2.0 __pthread_mutex_unlock F >> GLIBC_2.0 __pthread_mutexattr_destroy F >> GLIBC_2.0 __pthread_mutexattr_init F >> GLIBC_2.0 __pthread_mutexattr_settype F >> -GLIBC_2.0 __pthread_once F >> GLIBC_2.0 __pthread_setspecific F >> GLIBC_2.0 __read F >> GLIBC_2.0 __send F >> @@ -60,7 +59,6 @@ GLIBC_2.0 pthread_mutexattr_destroy F >> GLIBC_2.0 pthread_mutexattr_getkind_np F >> GLIBC_2.0 pthread_mutexattr_init F >> GLIBC_2.0 pthread_mutexattr_setkind_np F >> -GLIBC_2.0 pthread_once F >> GLIBC_2.0 pthread_setcancelstate F >> GLIBC_2.0 pthread_setcanceltype F >> GLIBC_2.0 pthread_setspecific F >> diff --git a/sysdeps/unix/sysv/linux/arc/libc.abilist b/sysdeps/unix/sysv/linux/arc/libc.abilist >> index 27fecc5c8a..cd549c654b 100644 >> --- a/sysdeps/unix/sysv/linux/arc/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/arc/libc.abilist >> @@ -328,6 +328,7 @@ GLIBC_2.32 __profile_frequency F >> GLIBC_2.32 __progname D 0x4 >> GLIBC_2.32 __progname_full D 0x4 >> GLIBC_2.32 __pthread_cleanup_routine F >> +GLIBC_2.32 __pthread_once F >> GLIBC_2.32 __ptsname_r_chk F >> GLIBC_2.32 __pwrite64 F >> GLIBC_2.32 __rawmemchr F >> @@ -1380,6 +1381,7 @@ GLIBC_2.32 pthread_mutex_destroy F >> GLIBC_2.32 pthread_mutex_init F >> GLIBC_2.32 pthread_mutex_lock F >> GLIBC_2.32 pthread_mutex_unlock F >> +GLIBC_2.32 pthread_once F >> GLIBC_2.32 pthread_self F >> GLIBC_2.32 pthread_setcancelstate F >> GLIBC_2.32 pthread_setcanceltype F >> @@ -1940,4 +1942,6 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> diff --git a/sysdeps/unix/sysv/linux/arc/libpthread.abilist b/sysdeps/unix/sysv/linux/arc/libpthread.abilist >> index 9713a20071..55970eb845 100644 >> --- a/sysdeps/unix/sysv/linux/arc/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/arc/libpthread.abilist >> @@ -22,7 +22,6 @@ GLIBC_2.32 __pthread_mutex_unlock F >> GLIBC_2.32 __pthread_mutexattr_destroy F >> GLIBC_2.32 __pthread_mutexattr_init F >> GLIBC_2.32 __pthread_mutexattr_settype F >> -GLIBC_2.32 __pthread_once F >> GLIBC_2.32 __pthread_register_cancel F >> GLIBC_2.32 __pthread_register_cancel_defer F >> GLIBC_2.32 __pthread_rwlock_destroy F >> @@ -135,7 +134,6 @@ GLIBC_2.32 pthread_mutexattr_setpshared F >> GLIBC_2.32 pthread_mutexattr_setrobust F >> GLIBC_2.32 pthread_mutexattr_setrobust_np F >> GLIBC_2.32 pthread_mutexattr_settype F >> -GLIBC_2.32 pthread_once F >> GLIBC_2.32 pthread_rwlock_clockrdlock F >> GLIBC_2.32 pthread_rwlock_clockwrlock F >> GLIBC_2.32 pthread_rwlock_destroy F >> diff --git a/sysdeps/unix/sysv/linux/arm/be/libc.abilist b/sysdeps/unix/sysv/linux/arm/be/libc.abilist >> index 2383d95094..03e5389852 100644 >> --- a/sysdeps/unix/sysv/linux/arm/be/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/arm/be/libc.abilist >> @@ -158,7 +158,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 _Exit F >> GLIBC_2.4 _IO_2_1_stderr_ D 0xa0 >> GLIBC_2.4 _IO_2_1_stdin_ D 0xa0 >> @@ -487,6 +489,7 @@ GLIBC_2.4 __profile_frequency F >> GLIBC_2.4 __progname D 0x4 >> GLIBC_2.4 __progname_full D 0x4 >> GLIBC_2.4 __pthread_cleanup_routine F >> +GLIBC_2.4 __pthread_once F >> GLIBC_2.4 __ptsname_r_chk F >> GLIBC_2.4 __pwrite64 F >> GLIBC_2.4 __rawmemchr F >> @@ -1548,6 +1551,7 @@ GLIBC_2.4 pthread_mutex_destroy F >> GLIBC_2.4 pthread_mutex_init F >> GLIBC_2.4 pthread_mutex_lock F >> GLIBC_2.4 pthread_mutex_unlock F >> +GLIBC_2.4 pthread_once F >> GLIBC_2.4 pthread_self F >> GLIBC_2.4 pthread_setcancelstate F >> GLIBC_2.4 pthread_setcanceltype F >> diff --git a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist >> index e75c83d47f..2e3d644ed9 100644 >> --- a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist >> @@ -57,7 +57,6 @@ GLIBC_2.4 __pthread_mutex_unlock F >> GLIBC_2.4 __pthread_mutexattr_destroy F >> GLIBC_2.4 __pthread_mutexattr_init F >> GLIBC_2.4 __pthread_mutexattr_settype F >> -GLIBC_2.4 __pthread_once F >> GLIBC_2.4 __pthread_register_cancel F >> GLIBC_2.4 __pthread_register_cancel_defer F >> GLIBC_2.4 __pthread_rwlock_destroy F >> @@ -151,7 +150,6 @@ GLIBC_2.4 pthread_mutexattr_setprotocol F >> GLIBC_2.4 pthread_mutexattr_setpshared F >> GLIBC_2.4 pthread_mutexattr_setrobust_np F >> GLIBC_2.4 pthread_mutexattr_settype F >> -GLIBC_2.4 pthread_once F >> GLIBC_2.4 pthread_rwlock_destroy F >> GLIBC_2.4 pthread_rwlock_init F >> GLIBC_2.4 pthread_rwlock_rdlock F >> diff --git a/sysdeps/unix/sysv/linux/arm/le/libc.abilist b/sysdeps/unix/sysv/linux/arm/le/libc.abilist >> index bb46b8b5e3..ac2fcf7b14 100644 >> --- a/sysdeps/unix/sysv/linux/arm/le/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/arm/le/libc.abilist >> @@ -155,7 +155,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 _Exit F >> GLIBC_2.4 _IO_2_1_stderr_ D 0xa0 >> GLIBC_2.4 _IO_2_1_stdin_ D 0xa0 >> @@ -484,6 +486,7 @@ GLIBC_2.4 __profile_frequency F >> GLIBC_2.4 __progname D 0x4 >> GLIBC_2.4 __progname_full D 0x4 >> GLIBC_2.4 __pthread_cleanup_routine F >> +GLIBC_2.4 __pthread_once F >> GLIBC_2.4 __ptsname_r_chk F >> GLIBC_2.4 __pwrite64 F >> GLIBC_2.4 __rawmemchr F >> @@ -1545,6 +1548,7 @@ GLIBC_2.4 pthread_mutex_destroy F >> GLIBC_2.4 pthread_mutex_init F >> GLIBC_2.4 pthread_mutex_lock F >> GLIBC_2.4 pthread_mutex_unlock F >> +GLIBC_2.4 pthread_once F >> GLIBC_2.4 pthread_self F >> GLIBC_2.4 pthread_setcancelstate F >> GLIBC_2.4 pthread_setcanceltype F >> diff --git a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist >> index e75c83d47f..2e3d644ed9 100644 >> --- a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist >> @@ -57,7 +57,6 @@ GLIBC_2.4 __pthread_mutex_unlock F >> GLIBC_2.4 __pthread_mutexattr_destroy F >> GLIBC_2.4 __pthread_mutexattr_init F >> GLIBC_2.4 __pthread_mutexattr_settype F >> -GLIBC_2.4 __pthread_once F >> GLIBC_2.4 __pthread_register_cancel F >> GLIBC_2.4 __pthread_register_cancel_defer F >> GLIBC_2.4 __pthread_rwlock_destroy F >> @@ -151,7 +150,6 @@ GLIBC_2.4 pthread_mutexattr_setprotocol F >> GLIBC_2.4 pthread_mutexattr_setpshared F >> GLIBC_2.4 pthread_mutexattr_setrobust_np F >> GLIBC_2.4 pthread_mutexattr_settype F >> -GLIBC_2.4 pthread_once F >> GLIBC_2.4 pthread_rwlock_destroy F >> GLIBC_2.4 pthread_rwlock_init F >> GLIBC_2.4 pthread_rwlock_rdlock F >> diff --git a/sysdeps/unix/sysv/linux/csky/libc.abilist b/sysdeps/unix/sysv/linux/csky/libc.abilist >> index 684e451f83..336a59110e 100644 >> --- a/sysdeps/unix/sysv/linux/csky/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/csky/libc.abilist >> @@ -332,6 +332,7 @@ GLIBC_2.29 __profile_frequency F >> GLIBC_2.29 __progname D 0x4 >> GLIBC_2.29 __progname_full D 0x4 >> GLIBC_2.29 __pthread_cleanup_routine F >> +GLIBC_2.29 __pthread_once F >> GLIBC_2.29 __ptsname_r_chk F >> GLIBC_2.29 __pwrite64 F >> GLIBC_2.29 __rawmemchr F >> @@ -1441,6 +1442,7 @@ GLIBC_2.29 pthread_mutex_destroy F >> GLIBC_2.29 pthread_mutex_init F >> GLIBC_2.29 pthread_mutex_lock F >> GLIBC_2.29 pthread_mutex_unlock F >> +GLIBC_2.29 pthread_once F >> GLIBC_2.29 pthread_self F >> GLIBC_2.29 pthread_setcancelstate F >> GLIBC_2.29 pthread_setcanceltype F >> @@ -2124,4 +2126,6 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> diff --git a/sysdeps/unix/sysv/linux/csky/libpthread.abilist b/sysdeps/unix/sysv/linux/csky/libpthread.abilist >> index bb8a51a51d..78e69d3e06 100644 >> --- a/sysdeps/unix/sysv/linux/csky/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/csky/libpthread.abilist >> @@ -22,7 +22,6 @@ GLIBC_2.29 __pthread_mutex_unlock F >> GLIBC_2.29 __pthread_mutexattr_destroy F >> GLIBC_2.29 __pthread_mutexattr_init F >> GLIBC_2.29 __pthread_mutexattr_settype F >> -GLIBC_2.29 __pthread_once F >> GLIBC_2.29 __pthread_register_cancel F >> GLIBC_2.29 __pthread_register_cancel_defer F >> GLIBC_2.29 __pthread_rwlock_destroy F >> @@ -132,7 +131,6 @@ GLIBC_2.29 pthread_mutexattr_setpshared F >> GLIBC_2.29 pthread_mutexattr_setrobust F >> GLIBC_2.29 pthread_mutexattr_setrobust_np F >> GLIBC_2.29 pthread_mutexattr_settype F >> -GLIBC_2.29 pthread_once F >> GLIBC_2.29 pthread_rwlock_destroy F >> GLIBC_2.29 pthread_rwlock_init F >> GLIBC_2.29 pthread_rwlock_rdlock F >> diff --git a/sysdeps/unix/sysv/linux/hppa/libc.abilist b/sysdeps/unix/sysv/linux/hppa/libc.abilist >> index 8dde237f8b..6d40c40268 100644 >> --- a/sysdeps/unix/sysv/linux/hppa/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/hppa/libc.abilist >> @@ -356,6 +356,7 @@ GLIBC_2.2 __printf_fp F >> GLIBC_2.2 __profile_frequency F >> GLIBC_2.2 __progname D 0x4 >> GLIBC_2.2 __progname_full D 0x4 >> +GLIBC_2.2 __pthread_once F >> GLIBC_2.2 __pwrite64 F >> GLIBC_2.2 __rawmemchr F >> GLIBC_2.2 __rcmd_errstr D 0x4 >> @@ -1275,6 +1276,7 @@ GLIBC_2.2 pthread_mutex_destroy F >> GLIBC_2.2 pthread_mutex_init F >> GLIBC_2.2 pthread_mutex_lock F >> GLIBC_2.2 pthread_mutex_unlock F >> +GLIBC_2.2 pthread_once F >> GLIBC_2.2 pthread_self F >> GLIBC_2.2 pthread_setcancelstate F >> GLIBC_2.2 pthread_setcanceltype F >> @@ -2082,7 +2084,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 __confstr_chk F >> GLIBC_2.4 __fgets_chk F >> GLIBC_2.4 __fgets_unlocked_chk F >> diff --git a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist >> index 740570ef37..96c70fb45e 100644 >> --- a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist >> @@ -30,7 +30,6 @@ GLIBC_2.2 __pthread_mutex_unlock F >> GLIBC_2.2 __pthread_mutexattr_destroy F >> GLIBC_2.2 __pthread_mutexattr_init F >> GLIBC_2.2 __pthread_mutexattr_settype F >> -GLIBC_2.2 __pthread_once F >> GLIBC_2.2 __pthread_rwlock_destroy F >> GLIBC_2.2 __pthread_rwlock_init F >> GLIBC_2.2 __pthread_rwlock_rdlock F >> @@ -108,7 +107,6 @@ GLIBC_2.2 pthread_mutexattr_init F >> GLIBC_2.2 pthread_mutexattr_setkind_np F >> GLIBC_2.2 pthread_mutexattr_setpshared F >> GLIBC_2.2 pthread_mutexattr_settype F >> -GLIBC_2.2 pthread_once F >> GLIBC_2.2 pthread_rwlock_destroy F >> GLIBC_2.2 pthread_rwlock_init F >> GLIBC_2.2 pthread_rwlock_rdlock F >> diff --git a/sysdeps/unix/sysv/linux/i386/libc.abilist b/sysdeps/unix/sysv/linux/i386/libc.abilist >> index cc2226be23..2022f82d81 100644 >> --- a/sysdeps/unix/sysv/linux/i386/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/i386/libc.abilist >> @@ -185,6 +185,7 @@ GLIBC_2.0 __printf_fp F >> GLIBC_2.0 __profile_frequency F >> GLIBC_2.0 __progname D 0x4 >> GLIBC_2.0 __progname_full D 0x4 >> +GLIBC_2.0 __pthread_once F >> GLIBC_2.0 __rcmd_errstr D 0x4 >> GLIBC_2.0 __read F >> GLIBC_2.0 __realloc_hook D 0x4 >> @@ -868,6 +869,7 @@ GLIBC_2.0 pthread_mutex_destroy F >> GLIBC_2.0 pthread_mutex_init F >> GLIBC_2.0 pthread_mutex_lock F >> GLIBC_2.0 pthread_mutex_unlock F >> +GLIBC_2.0 pthread_once F >> GLIBC_2.0 pthread_self F >> GLIBC_2.0 pthread_setcancelstate F >> GLIBC_2.0 pthread_setcanceltype F >> @@ -2249,7 +2251,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 __confstr_chk F >> GLIBC_2.4 __fgets_chk F >> GLIBC_2.4 __fgets_unlocked_chk F >> diff --git a/sysdeps/unix/sysv/linux/i386/libpthread.abilist b/sysdeps/unix/sysv/linux/i386/libpthread.abilist >> index 0b8c5b9104..f2be012ea9 100644 >> --- a/sysdeps/unix/sysv/linux/i386/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/i386/libpthread.abilist >> @@ -18,7 +18,6 @@ GLIBC_2.0 __pthread_mutex_unlock F >> GLIBC_2.0 __pthread_mutexattr_destroy F >> GLIBC_2.0 __pthread_mutexattr_init F >> GLIBC_2.0 __pthread_mutexattr_settype F >> -GLIBC_2.0 __pthread_once F >> GLIBC_2.0 __pthread_setspecific F >> GLIBC_2.0 __read F >> GLIBC_2.0 __send F >> @@ -60,7 +59,6 @@ GLIBC_2.0 pthread_mutexattr_destroy F >> GLIBC_2.0 pthread_mutexattr_getkind_np F >> GLIBC_2.0 pthread_mutexattr_init F >> GLIBC_2.0 pthread_mutexattr_setkind_np F >> -GLIBC_2.0 pthread_once F >> GLIBC_2.0 pthread_setcancelstate F >> GLIBC_2.0 pthread_setcanceltype F >> GLIBC_2.0 pthread_setspecific F >> diff --git a/sysdeps/unix/sysv/linux/ia64/libc.abilist b/sysdeps/unix/sysv/linux/ia64/libc.abilist >> index 438f3bd131..b9eeaabb01 100644 >> --- a/sysdeps/unix/sysv/linux/ia64/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/ia64/libc.abilist >> @@ -360,6 +360,7 @@ GLIBC_2.2 __printf_fp F >> GLIBC_2.2 __profile_frequency F >> GLIBC_2.2 __progname D 0x8 >> GLIBC_2.2 __progname_full D 0x8 >> +GLIBC_2.2 __pthread_once F >> GLIBC_2.2 __pwrite64 F >> GLIBC_2.2 __rawmemchr F >> GLIBC_2.2 __rcmd_errstr D 0x8 >> @@ -1296,6 +1297,7 @@ GLIBC_2.2 pthread_mutex_destroy F >> GLIBC_2.2 pthread_mutex_init F >> GLIBC_2.2 pthread_mutex_lock F >> GLIBC_2.2 pthread_mutex_unlock F >> +GLIBC_2.2 pthread_once F >> GLIBC_2.2 pthread_self F >> GLIBC_2.2 pthread_setcancelstate F >> GLIBC_2.2 pthread_setcanceltype F >> @@ -2114,7 +2116,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 __confstr_chk F >> GLIBC_2.4 __fgets_chk F >> GLIBC_2.4 __fgets_unlocked_chk F >> diff --git a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist >> index 0565c43c10..3698acd3e9 100644 >> --- a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist >> @@ -30,7 +30,6 @@ GLIBC_2.2 __pthread_mutex_unlock F >> GLIBC_2.2 __pthread_mutexattr_destroy F >> GLIBC_2.2 __pthread_mutexattr_init F >> GLIBC_2.2 __pthread_mutexattr_settype F >> -GLIBC_2.2 __pthread_once F >> GLIBC_2.2 __pthread_rwlock_destroy F >> GLIBC_2.2 __pthread_rwlock_init F >> GLIBC_2.2 __pthread_rwlock_rdlock F >> @@ -108,7 +107,6 @@ GLIBC_2.2 pthread_mutexattr_init F >> GLIBC_2.2 pthread_mutexattr_setkind_np F >> GLIBC_2.2 pthread_mutexattr_setpshared F >> GLIBC_2.2 pthread_mutexattr_settype F >> -GLIBC_2.2 pthread_once F >> GLIBC_2.2 pthread_rwlock_destroy F >> GLIBC_2.2 pthread_rwlock_init F >> GLIBC_2.2 pthread_rwlock_rdlock F >> diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist >> index 5add3e607a..5a099fb3d0 100644 >> --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist >> @@ -159,7 +159,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 _Exit F >> GLIBC_2.4 _IO_2_1_stderr_ D 0x98 >> GLIBC_2.4 _IO_2_1_stdin_ D 0x98 >> @@ -473,6 +475,7 @@ GLIBC_2.4 __profile_frequency F >> GLIBC_2.4 __progname D 0x4 >> GLIBC_2.4 __progname_full D 0x4 >> GLIBC_2.4 __pthread_cleanup_routine F >> +GLIBC_2.4 __pthread_once F >> GLIBC_2.4 __ptsname_r_chk F >> GLIBC_2.4 __pwrite64 F >> GLIBC_2.4 __rawmemchr F >> @@ -1528,6 +1531,7 @@ GLIBC_2.4 pthread_mutex_destroy F >> GLIBC_2.4 pthread_mutex_init F >> GLIBC_2.4 pthread_mutex_lock F >> GLIBC_2.4 pthread_mutex_unlock F >> +GLIBC_2.4 pthread_once F >> GLIBC_2.4 pthread_self F >> GLIBC_2.4 pthread_setcancelstate F >> GLIBC_2.4 pthread_setcanceltype F >> diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist >> index e75c83d47f..2e3d644ed9 100644 >> --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist >> @@ -57,7 +57,6 @@ GLIBC_2.4 __pthread_mutex_unlock F >> GLIBC_2.4 __pthread_mutexattr_destroy F >> GLIBC_2.4 __pthread_mutexattr_init F >> GLIBC_2.4 __pthread_mutexattr_settype F >> -GLIBC_2.4 __pthread_once F >> GLIBC_2.4 __pthread_register_cancel F >> GLIBC_2.4 __pthread_register_cancel_defer F >> GLIBC_2.4 __pthread_rwlock_destroy F >> @@ -151,7 +150,6 @@ GLIBC_2.4 pthread_mutexattr_setprotocol F >> GLIBC_2.4 pthread_mutexattr_setpshared F >> GLIBC_2.4 pthread_mutexattr_setrobust_np F >> GLIBC_2.4 pthread_mutexattr_settype F >> -GLIBC_2.4 pthread_once F >> GLIBC_2.4 pthread_rwlock_destroy F >> GLIBC_2.4 pthread_rwlock_init F >> GLIBC_2.4 pthread_rwlock_rdlock F >> diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist >> index 2e7c9f9b47..f81c9cc523 100644 >> --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist >> @@ -185,6 +185,7 @@ GLIBC_2.0 __printf_fp F >> GLIBC_2.0 __profile_frequency F >> GLIBC_2.0 __progname D 0x4 >> GLIBC_2.0 __progname_full D 0x4 >> +GLIBC_2.0 __pthread_once F >> GLIBC_2.0 __rcmd_errstr D 0x4 >> GLIBC_2.0 __read F >> GLIBC_2.0 __realloc_hook D 0x4 >> @@ -867,6 +868,7 @@ GLIBC_2.0 pthread_mutex_destroy F >> GLIBC_2.0 pthread_mutex_init F >> GLIBC_2.0 pthread_mutex_lock F >> GLIBC_2.0 pthread_mutex_unlock F >> +GLIBC_2.0 pthread_once F >> GLIBC_2.0 pthread_self F >> GLIBC_2.0 pthread_setcancelstate F >> GLIBC_2.0 pthread_setcanceltype F >> @@ -2194,7 +2196,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 __confstr_chk F >> GLIBC_2.4 __fgets_chk F >> GLIBC_2.4 __fgets_unlocked_chk F >> diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist >> index 0b8c5b9104..f2be012ea9 100644 >> --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist >> @@ -18,7 +18,6 @@ GLIBC_2.0 __pthread_mutex_unlock F >> GLIBC_2.0 __pthread_mutexattr_destroy F >> GLIBC_2.0 __pthread_mutexattr_init F >> GLIBC_2.0 __pthread_mutexattr_settype F >> -GLIBC_2.0 __pthread_once F >> GLIBC_2.0 __pthread_setspecific F >> GLIBC_2.0 __read F >> GLIBC_2.0 __send F >> @@ -60,7 +59,6 @@ GLIBC_2.0 pthread_mutexattr_destroy F >> GLIBC_2.0 pthread_mutexattr_getkind_np F >> GLIBC_2.0 pthread_mutexattr_init F >> GLIBC_2.0 pthread_mutexattr_setkind_np F >> -GLIBC_2.0 pthread_once F >> GLIBC_2.0 pthread_setcancelstate F >> GLIBC_2.0 pthread_setcanceltype F >> GLIBC_2.0 pthread_setspecific F >> diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist >> index 493f7ddaa0..ce50516bc6 100644 >> --- a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist >> @@ -340,6 +340,7 @@ GLIBC_2.18 __profile_frequency F >> GLIBC_2.18 __progname D 0x4 >> GLIBC_2.18 __progname_full D 0x4 >> GLIBC_2.18 __pthread_cleanup_routine F >> +GLIBC_2.18 __pthread_once F >> GLIBC_2.18 __ptsname_r_chk F >> GLIBC_2.18 __pwrite64 F >> GLIBC_2.18 __rawmemchr F >> @@ -1456,6 +1457,7 @@ GLIBC_2.18 pthread_mutex_destroy F >> GLIBC_2.18 pthread_mutex_init F >> GLIBC_2.18 pthread_mutex_lock F >> GLIBC_2.18 pthread_mutex_unlock F >> +GLIBC_2.18 pthread_once F >> GLIBC_2.18 pthread_self F >> GLIBC_2.18 pthread_setcancelstate F >> GLIBC_2.18 pthread_setcanceltype F >> @@ -2175,4 +2177,6 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist >> index 3798ae24be..73c70d5c87 100644 >> --- a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist >> @@ -23,7 +23,6 @@ GLIBC_2.18 __pthread_mutex_unlock F >> GLIBC_2.18 __pthread_mutexattr_destroy F >> GLIBC_2.18 __pthread_mutexattr_init F >> GLIBC_2.18 __pthread_mutexattr_settype F >> -GLIBC_2.18 __pthread_once F >> GLIBC_2.18 __pthread_register_cancel F >> GLIBC_2.18 __pthread_register_cancel_defer F >> GLIBC_2.18 __pthread_rwlock_destroy F >> @@ -121,7 +120,6 @@ GLIBC_2.18 pthread_mutexattr_setpshared F >> GLIBC_2.18 pthread_mutexattr_setrobust F >> GLIBC_2.18 pthread_mutexattr_setrobust_np F >> GLIBC_2.18 pthread_mutexattr_settype F >> -GLIBC_2.18 pthread_once F >> GLIBC_2.18 pthread_rwlock_destroy F >> GLIBC_2.18 pthread_rwlock_init F >> GLIBC_2.18 pthread_rwlock_rdlock F >> diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist >> index ec83b89aa3..37ecc7c967 100644 >> --- a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist >> @@ -340,6 +340,7 @@ GLIBC_2.18 __profile_frequency F >> GLIBC_2.18 __progname D 0x4 >> GLIBC_2.18 __progname_full D 0x4 >> GLIBC_2.18 __pthread_cleanup_routine F >> +GLIBC_2.18 __pthread_once F >> GLIBC_2.18 __ptsname_r_chk F >> GLIBC_2.18 __pwrite64 F >> GLIBC_2.18 __rawmemchr F >> @@ -1456,6 +1457,7 @@ GLIBC_2.18 pthread_mutex_destroy F >> GLIBC_2.18 pthread_mutex_init F >> GLIBC_2.18 pthread_mutex_lock F >> GLIBC_2.18 pthread_mutex_unlock F >> +GLIBC_2.18 pthread_once F >> GLIBC_2.18 pthread_self F >> GLIBC_2.18 pthread_setcancelstate F >> GLIBC_2.18 pthread_setcanceltype F >> @@ -2172,4 +2174,6 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist >> index 3798ae24be..73c70d5c87 100644 >> --- a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist >> @@ -23,7 +23,6 @@ GLIBC_2.18 __pthread_mutex_unlock F >> GLIBC_2.18 __pthread_mutexattr_destroy F >> GLIBC_2.18 __pthread_mutexattr_init F >> GLIBC_2.18 __pthread_mutexattr_settype F >> -GLIBC_2.18 __pthread_once F >> GLIBC_2.18 __pthread_register_cancel F >> GLIBC_2.18 __pthread_register_cancel_defer F >> GLIBC_2.18 __pthread_rwlock_destroy F >> @@ -121,7 +120,6 @@ GLIBC_2.18 pthread_mutexattr_setpshared F >> GLIBC_2.18 pthread_mutexattr_setrobust F >> GLIBC_2.18 pthread_mutexattr_setrobust_np F >> GLIBC_2.18 pthread_mutexattr_settype F >> -GLIBC_2.18 pthread_once F >> GLIBC_2.18 pthread_rwlock_destroy F >> GLIBC_2.18 pthread_rwlock_init F >> GLIBC_2.18 pthread_rwlock_rdlock F >> diff --git a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist >> index cb0ab4bc19..6d50fcc64f 100644 >> --- a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist >> @@ -183,6 +183,7 @@ GLIBC_2.0 __printf_fp F >> GLIBC_2.0 __profile_frequency F >> GLIBC_2.0 __progname D 0x4 >> GLIBC_2.0 __progname_full D 0x4 >> +GLIBC_2.0 __pthread_once F >> GLIBC_2.0 __rcmd_errstr D 0x4 >> GLIBC_2.0 __read F >> GLIBC_2.0 __realloc_hook D 0x4 >> @@ -864,6 +865,7 @@ GLIBC_2.0 pthread_mutex_destroy F >> GLIBC_2.0 pthread_mutex_init F >> GLIBC_2.0 pthread_mutex_lock F >> GLIBC_2.0 pthread_mutex_unlock F >> +GLIBC_2.0 pthread_once F >> GLIBC_2.0 pthread_self F >> GLIBC_2.0 pthread_setcancelstate F >> GLIBC_2.0 pthread_setcanceltype F >> @@ -2165,7 +2167,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 __confstr_chk F >> GLIBC_2.4 __fgets_chk F >> GLIBC_2.4 __fgets_unlocked_chk F >> diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist >> index 79da59eb81..faa1ad9d1c 100644 >> --- a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist >> @@ -18,7 +18,6 @@ GLIBC_2.0 __pthread_mutex_unlock F >> GLIBC_2.0 __pthread_mutexattr_destroy F >> GLIBC_2.0 __pthread_mutexattr_init F >> GLIBC_2.0 __pthread_mutexattr_settype F >> -GLIBC_2.0 __pthread_once F >> GLIBC_2.0 __pthread_setspecific F >> GLIBC_2.0 __read F >> GLIBC_2.0 __send F >> @@ -60,7 +59,6 @@ GLIBC_2.0 pthread_mutexattr_destroy F >> GLIBC_2.0 pthread_mutexattr_getkind_np F >> GLIBC_2.0 pthread_mutexattr_init F >> GLIBC_2.0 pthread_mutexattr_setkind_np F >> -GLIBC_2.0 pthread_once F >> GLIBC_2.0 pthread_setcancelstate F >> GLIBC_2.0 pthread_setcanceltype F >> GLIBC_2.0 pthread_setspecific F >> diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist >> index 2be2623e99..b4e05e270d 100644 >> --- a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist >> @@ -183,6 +183,7 @@ GLIBC_2.0 __printf_fp F >> GLIBC_2.0 __profile_frequency F >> GLIBC_2.0 __progname D 0x4 >> GLIBC_2.0 __progname_full D 0x4 >> +GLIBC_2.0 __pthread_once F >> GLIBC_2.0 __rcmd_errstr D 0x4 >> GLIBC_2.0 __read F >> GLIBC_2.0 __realloc_hook D 0x4 >> @@ -864,6 +865,7 @@ GLIBC_2.0 pthread_mutex_destroy F >> GLIBC_2.0 pthread_mutex_init F >> GLIBC_2.0 pthread_mutex_lock F >> GLIBC_2.0 pthread_mutex_unlock F >> +GLIBC_2.0 pthread_once F >> GLIBC_2.0 pthread_self F >> GLIBC_2.0 pthread_setcancelstate F >> GLIBC_2.0 pthread_setcanceltype F >> @@ -2163,7 +2165,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 __confstr_chk F >> GLIBC_2.4 __fgets_chk F >> GLIBC_2.4 __fgets_unlocked_chk F >> diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist >> index 79da59eb81..faa1ad9d1c 100644 >> --- a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist >> @@ -18,7 +18,6 @@ GLIBC_2.0 __pthread_mutex_unlock F >> GLIBC_2.0 __pthread_mutexattr_destroy F >> GLIBC_2.0 __pthread_mutexattr_init F >> GLIBC_2.0 __pthread_mutexattr_settype F >> -GLIBC_2.0 __pthread_once F >> GLIBC_2.0 __pthread_setspecific F >> GLIBC_2.0 __read F >> GLIBC_2.0 __send F >> @@ -60,7 +59,6 @@ GLIBC_2.0 pthread_mutexattr_destroy F >> GLIBC_2.0 pthread_mutexattr_getkind_np F >> GLIBC_2.0 pthread_mutexattr_init F >> GLIBC_2.0 pthread_mutexattr_setkind_np F >> -GLIBC_2.0 pthread_once F >> GLIBC_2.0 pthread_setcancelstate F >> GLIBC_2.0 pthread_setcanceltype F >> GLIBC_2.0 pthread_setspecific F >> diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist >> index 09147861b5..71d184c2aa 100644 >> --- a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist >> @@ -183,6 +183,7 @@ GLIBC_2.0 __printf_fp F >> GLIBC_2.0 __profile_frequency F >> GLIBC_2.0 __progname D 0x4 >> GLIBC_2.0 __progname_full D 0x4 >> +GLIBC_2.0 __pthread_once F >> GLIBC_2.0 __rcmd_errstr D 0x4 >> GLIBC_2.0 __read F >> GLIBC_2.0 __realloc_hook D 0x4 >> @@ -864,6 +865,7 @@ GLIBC_2.0 pthread_mutex_destroy F >> GLIBC_2.0 pthread_mutex_init F >> GLIBC_2.0 pthread_mutex_lock F >> GLIBC_2.0 pthread_mutex_unlock F >> +GLIBC_2.0 pthread_once F >> GLIBC_2.0 pthread_self F >> GLIBC_2.0 pthread_setcancelstate F >> GLIBC_2.0 pthread_setcanceltype F >> @@ -2171,7 +2173,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 __confstr_chk F >> GLIBC_2.4 __fgets_chk F >> GLIBC_2.4 __fgets_unlocked_chk F >> diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist >> index 4a0208c8c8..1e792c6705 100644 >> --- a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist >> @@ -183,6 +183,7 @@ GLIBC_2.0 __printf_fp F >> GLIBC_2.0 __profile_frequency F >> GLIBC_2.0 __progname D 0x8 >> GLIBC_2.0 __progname_full D 0x8 >> +GLIBC_2.0 __pthread_once F >> GLIBC_2.0 __rcmd_errstr D 0x8 >> GLIBC_2.0 __read F >> GLIBC_2.0 __realloc_hook D 0x8 >> @@ -862,6 +863,7 @@ GLIBC_2.0 pthread_mutex_destroy F >> GLIBC_2.0 pthread_mutex_init F >> GLIBC_2.0 pthread_mutex_lock F >> GLIBC_2.0 pthread_mutex_unlock F >> +GLIBC_2.0 pthread_once F >> GLIBC_2.0 pthread_self F >> GLIBC_2.0 pthread_setcancelstate F >> GLIBC_2.0 pthread_setcanceltype F >> @@ -2165,7 +2167,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 __confstr_chk F >> GLIBC_2.4 __fgets_chk F >> GLIBC_2.4 __fgets_unlocked_chk F >> diff --git a/sysdeps/unix/sysv/linux/nios2/libc.abilist b/sysdeps/unix/sysv/linux/nios2/libc.abilist >> index 078025a7d6..5afc3e8022 100644 >> --- a/sysdeps/unix/sysv/linux/nios2/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/nios2/libc.abilist >> @@ -377,6 +377,7 @@ GLIBC_2.21 __profile_frequency F >> GLIBC_2.21 __progname D 0x4 >> GLIBC_2.21 __progname_full D 0x4 >> GLIBC_2.21 __pthread_cleanup_routine F >> +GLIBC_2.21 __pthread_once F >> GLIBC_2.21 __ptsname_r_chk F >> GLIBC_2.21 __pwrite64 F >> GLIBC_2.21 __rawmemchr F >> @@ -1498,6 +1499,7 @@ GLIBC_2.21 pthread_mutex_destroy F >> GLIBC_2.21 pthread_mutex_init F >> GLIBC_2.21 pthread_mutex_lock F >> GLIBC_2.21 pthread_mutex_unlock F >> +GLIBC_2.21 pthread_once F >> GLIBC_2.21 pthread_self F >> GLIBC_2.21 pthread_setcancelstate F >> GLIBC_2.21 pthread_setcanceltype F >> @@ -2213,4 +2215,6 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> diff --git a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist >> index 9dadbc85cc..5db41bc85b 100644 >> --- a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist >> @@ -23,7 +23,6 @@ GLIBC_2.21 __pthread_mutex_unlock F >> GLIBC_2.21 __pthread_mutexattr_destroy F >> GLIBC_2.21 __pthread_mutexattr_init F >> GLIBC_2.21 __pthread_mutexattr_settype F >> -GLIBC_2.21 __pthread_once F >> GLIBC_2.21 __pthread_register_cancel F >> GLIBC_2.21 __pthread_register_cancel_defer F >> GLIBC_2.21 __pthread_rwlock_destroy F >> @@ -121,7 +120,6 @@ GLIBC_2.21 pthread_mutexattr_setpshared F >> GLIBC_2.21 pthread_mutexattr_setrobust F >> GLIBC_2.21 pthread_mutexattr_setrobust_np F >> GLIBC_2.21 pthread_mutexattr_settype F >> -GLIBC_2.21 pthread_once F >> GLIBC_2.21 pthread_rwlock_destroy F >> GLIBC_2.21 pthread_rwlock_init F >> GLIBC_2.21 pthread_rwlock_rdlock F >> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist >> index bc79b844a5..4bfae8faa6 100644 >> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist >> @@ -194,6 +194,7 @@ GLIBC_2.0 __printf_fp F >> GLIBC_2.0 __profile_frequency F >> GLIBC_2.0 __progname D 0x4 >> GLIBC_2.0 __progname_full D 0x4 >> +GLIBC_2.0 __pthread_once F >> GLIBC_2.0 __rcmd_errstr D 0x4 >> GLIBC_2.0 __read F >> GLIBC_2.0 __realloc_hook D 0x4 >> @@ -875,6 +876,7 @@ GLIBC_2.0 pthread_mutex_destroy F >> GLIBC_2.0 pthread_mutex_init F >> GLIBC_2.0 pthread_mutex_lock F >> GLIBC_2.0 pthread_mutex_unlock F >> +GLIBC_2.0 pthread_once F >> GLIBC_2.0 pthread_self F >> GLIBC_2.0 pthread_setcancelstate F >> GLIBC_2.0 pthread_setcanceltype F >> @@ -2221,7 +2223,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 _IO_fprintf F >> GLIBC_2.4 _IO_printf F >> GLIBC_2.4 _IO_sprintf F >> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist >> index c852fcc147..995c88cbce 100644 >> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist >> @@ -18,7 +18,6 @@ GLIBC_2.0 __pthread_mutex_unlock F >> GLIBC_2.0 __pthread_mutexattr_destroy F >> GLIBC_2.0 __pthread_mutexattr_init F >> GLIBC_2.0 __pthread_mutexattr_settype F >> -GLIBC_2.0 __pthread_once F >> GLIBC_2.0 __pthread_setspecific F >> GLIBC_2.0 __read F >> GLIBC_2.0 __send F >> @@ -60,7 +59,6 @@ GLIBC_2.0 pthread_mutexattr_destroy F >> GLIBC_2.0 pthread_mutexattr_getkind_np F >> GLIBC_2.0 pthread_mutexattr_init F >> GLIBC_2.0 pthread_mutexattr_setkind_np F >> -GLIBC_2.0 pthread_once F >> GLIBC_2.0 pthread_setcancelstate F >> GLIBC_2.0 pthread_setcanceltype F >> GLIBC_2.0 pthread_setspecific F >> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist >> index 63c05472ed..dc102f7f29 100644 >> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist >> @@ -194,6 +194,7 @@ GLIBC_2.0 __printf_fp F >> GLIBC_2.0 __profile_frequency F >> GLIBC_2.0 __progname D 0x4 >> GLIBC_2.0 __progname_full D 0x4 >> +GLIBC_2.0 __pthread_once F >> GLIBC_2.0 __rcmd_errstr D 0x4 >> GLIBC_2.0 __read F >> GLIBC_2.0 __realloc_hook D 0x4 >> @@ -875,6 +876,7 @@ GLIBC_2.0 pthread_mutex_destroy F >> GLIBC_2.0 pthread_mutex_init F >> GLIBC_2.0 pthread_mutex_lock F >> GLIBC_2.0 pthread_mutex_unlock F >> +GLIBC_2.0 pthread_once F >> GLIBC_2.0 pthread_self F >> GLIBC_2.0 pthread_setcancelstate F >> GLIBC_2.0 pthread_setcanceltype F >> @@ -2254,7 +2256,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 _IO_fprintf F >> GLIBC_2.4 _IO_printf F >> GLIBC_2.4 _IO_sprintf F >> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist >> index 37e4ee564d..9f019c4eac 100644 >> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist >> @@ -409,6 +409,7 @@ GLIBC_2.3 __printf_fp F >> GLIBC_2.3 __profile_frequency F >> GLIBC_2.3 __progname D 0x8 >> GLIBC_2.3 __progname_full D 0x8 >> +GLIBC_2.3 __pthread_once F >> GLIBC_2.3 __pwrite64 F >> GLIBC_2.3 __rawmemchr F >> GLIBC_2.3 __rcmd_errstr D 0x8 >> @@ -1382,6 +1383,7 @@ GLIBC_2.3 pthread_mutex_destroy F >> GLIBC_2.3 pthread_mutex_init F >> GLIBC_2.3 pthread_mutex_lock F >> GLIBC_2.3 pthread_mutex_unlock F >> +GLIBC_2.3 pthread_once F >> GLIBC_2.3 pthread_self F >> GLIBC_2.3 pthread_setcancelstate F >> GLIBC_2.3 pthread_setcanceltype F >> @@ -2084,7 +2086,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 _IO_fprintf F >> GLIBC_2.4 _IO_printf F >> GLIBC_2.4 _IO_sprintf F >> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist >> index b7d0c8b743..07428bd3d6 100644 >> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist >> @@ -51,7 +51,6 @@ GLIBC_2.3 __pthread_mutex_unlock F >> GLIBC_2.3 __pthread_mutexattr_destroy F >> GLIBC_2.3 __pthread_mutexattr_init F >> GLIBC_2.3 __pthread_mutexattr_settype F >> -GLIBC_2.3 __pthread_once F >> GLIBC_2.3 __pthread_rwlock_destroy F >> GLIBC_2.3 __pthread_rwlock_init F >> GLIBC_2.3 __pthread_rwlock_rdlock F >> @@ -128,7 +127,6 @@ GLIBC_2.3 pthread_mutexattr_init F >> GLIBC_2.3 pthread_mutexattr_setkind_np F >> GLIBC_2.3 pthread_mutexattr_setpshared F >> GLIBC_2.3 pthread_mutexattr_settype F >> -GLIBC_2.3 pthread_once F >> GLIBC_2.3 pthread_rwlock_destroy F >> GLIBC_2.3 pthread_rwlock_init F >> GLIBC_2.3 pthread_rwlock_rdlock F >> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist >> index 1888ec6e86..f1217ffca5 100644 >> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist >> @@ -425,6 +425,7 @@ GLIBC_2.17 __profile_frequency F >> GLIBC_2.17 __progname D 0x8 >> GLIBC_2.17 __progname_full D 0x8 >> GLIBC_2.17 __pthread_cleanup_routine F >> +GLIBC_2.17 __pthread_once F >> GLIBC_2.17 __ptsname_r_chk F >> GLIBC_2.17 __pwrite64 F >> GLIBC_2.17 __rawmemchr F >> @@ -1542,6 +1543,7 @@ GLIBC_2.17 pthread_mutex_destroy F >> GLIBC_2.17 pthread_mutex_init F >> GLIBC_2.17 pthread_mutex_lock F >> GLIBC_2.17 pthread_mutex_unlock F >> +GLIBC_2.17 pthread_once F >> GLIBC_2.17 pthread_self F >> GLIBC_2.17 pthread_setcancelstate F >> GLIBC_2.17 pthread_setcanceltype F >> @@ -2375,4 +2377,6 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist >> index 884d97efca..a57e807cd0 100644 >> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist >> @@ -23,7 +23,6 @@ GLIBC_2.17 __pthread_mutex_unlock F >> GLIBC_2.17 __pthread_mutexattr_destroy F >> GLIBC_2.17 __pthread_mutexattr_init F >> GLIBC_2.17 __pthread_mutexattr_settype F >> -GLIBC_2.17 __pthread_once F >> GLIBC_2.17 __pthread_register_cancel F >> GLIBC_2.17 __pthread_register_cancel_defer F >> GLIBC_2.17 __pthread_rwlock_destroy F >> @@ -120,7 +119,6 @@ GLIBC_2.17 pthread_mutexattr_setpshared F >> GLIBC_2.17 pthread_mutexattr_setrobust F >> GLIBC_2.17 pthread_mutexattr_setrobust_np F >> GLIBC_2.17 pthread_mutexattr_settype F >> -GLIBC_2.17 pthread_once F >> GLIBC_2.17 pthread_rwlock_destroy F >> GLIBC_2.17 pthread_rwlock_init F >> GLIBC_2.17 pthread_rwlock_rdlock F >> diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist >> index 8cd92b1abe..afaabf996e 100644 >> --- a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist >> @@ -325,6 +325,7 @@ GLIBC_2.33 __profile_frequency F >> GLIBC_2.33 __progname D 0x4 >> GLIBC_2.33 __progname_full D 0x4 >> GLIBC_2.33 __pthread_cleanup_routine F >> +GLIBC_2.33 __pthread_once F >> GLIBC_2.33 __ptsname_r_chk F >> GLIBC_2.33 __pwrite64 F >> GLIBC_2.33 __rawmemchr F >> @@ -1382,6 +1383,7 @@ GLIBC_2.33 pthread_mutex_destroy F >> GLIBC_2.33 pthread_mutex_init F >> GLIBC_2.33 pthread_mutex_lock F >> GLIBC_2.33 pthread_mutex_unlock F >> +GLIBC_2.33 pthread_once F >> GLIBC_2.33 pthread_self F >> GLIBC_2.33 pthread_setcancelstate F >> GLIBC_2.33 pthread_setcanceltype F >> @@ -1942,4 +1944,6 @@ GLIBC_2.33 writev F >> GLIBC_2.33 wscanf F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist >> index 71e8f38003..ddf52b427a 100644 >> --- a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist >> @@ -22,7 +22,6 @@ GLIBC_2.33 __pthread_mutex_unlock F >> GLIBC_2.33 __pthread_mutexattr_destroy F >> GLIBC_2.33 __pthread_mutexattr_init F >> GLIBC_2.33 __pthread_mutexattr_settype F >> -GLIBC_2.33 __pthread_once F >> GLIBC_2.33 __pthread_register_cancel F >> GLIBC_2.33 __pthread_register_cancel_defer F >> GLIBC_2.33 __pthread_rwlock_destroy F >> @@ -135,7 +134,6 @@ GLIBC_2.33 pthread_mutexattr_setpshared F >> GLIBC_2.33 pthread_mutexattr_setrobust F >> GLIBC_2.33 pthread_mutexattr_setrobust_np F >> GLIBC_2.33 pthread_mutexattr_settype F >> -GLIBC_2.33 pthread_once F >> GLIBC_2.33 pthread_rwlock_clockrdlock F >> GLIBC_2.33 pthread_rwlock_clockwrlock F >> GLIBC_2.33 pthread_rwlock_destroy F >> diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist >> index 894f01282f..28563980d5 100644 >> --- a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist >> @@ -336,6 +336,7 @@ GLIBC_2.27 __profile_frequency F >> GLIBC_2.27 __progname D 0x8 >> GLIBC_2.27 __progname_full D 0x8 >> GLIBC_2.27 __pthread_cleanup_routine F >> +GLIBC_2.27 __pthread_once F >> GLIBC_2.27 __ptsname_r_chk F >> GLIBC_2.27 __pwrite64 F >> GLIBC_2.27 __rawmemchr F >> @@ -1444,6 +1445,7 @@ GLIBC_2.27 pthread_mutex_destroy F >> GLIBC_2.27 pthread_mutex_init F >> GLIBC_2.27 pthread_mutex_lock F >> GLIBC_2.27 pthread_mutex_unlock F >> +GLIBC_2.27 pthread_once F >> GLIBC_2.27 pthread_self F >> GLIBC_2.27 pthread_setcancelstate F >> GLIBC_2.27 pthread_setcanceltype F >> @@ -2142,4 +2144,6 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist >> index f5f9baefb9..b12ec34091 100644 >> --- a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist >> @@ -23,7 +23,6 @@ GLIBC_2.27 __pthread_mutex_unlock F >> GLIBC_2.27 __pthread_mutexattr_destroy F >> GLIBC_2.27 __pthread_mutexattr_init F >> GLIBC_2.27 __pthread_mutexattr_settype F >> -GLIBC_2.27 __pthread_once F >> GLIBC_2.27 __pthread_register_cancel F >> GLIBC_2.27 __pthread_register_cancel_defer F >> GLIBC_2.27 __pthread_rwlock_destroy F >> @@ -121,7 +120,6 @@ GLIBC_2.27 pthread_mutexattr_setpshared F >> GLIBC_2.27 pthread_mutexattr_setrobust F >> GLIBC_2.27 pthread_mutexattr_setrobust_np F >> GLIBC_2.27 pthread_mutexattr_settype F >> -GLIBC_2.27 pthread_once F >> GLIBC_2.27 pthread_rwlock_destroy F >> GLIBC_2.27 pthread_rwlock_init F >> GLIBC_2.27 pthread_rwlock_rdlock F >> diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist >> index 8788493ce0..6cfde17d64 100644 >> --- a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist >> @@ -185,6 +185,7 @@ GLIBC_2.0 __printf_fp F >> GLIBC_2.0 __profile_frequency F >> GLIBC_2.0 __progname D 0x4 >> GLIBC_2.0 __progname_full D 0x4 >> +GLIBC_2.0 __pthread_once F >> GLIBC_2.0 __rcmd_errstr D 0x4 >> GLIBC_2.0 __read F >> GLIBC_2.0 __realloc_hook D 0x4 >> @@ -866,6 +867,7 @@ GLIBC_2.0 pthread_mutex_destroy F >> GLIBC_2.0 pthread_mutex_init F >> GLIBC_2.0 pthread_mutex_lock F >> GLIBC_2.0 pthread_mutex_unlock F >> +GLIBC_2.0 pthread_once F >> GLIBC_2.0 pthread_self F >> GLIBC_2.0 pthread_setcancelstate F >> GLIBC_2.0 pthread_setcanceltype F >> @@ -2219,7 +2221,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 _IO_fprintf F >> GLIBC_2.4 _IO_printf F >> GLIBC_2.4 _IO_sprintf F >> diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist >> index 518a08ad1e..738e9ab535 100644 >> --- a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist >> @@ -18,7 +18,6 @@ GLIBC_2.0 __pthread_mutex_unlock F >> GLIBC_2.0 __pthread_mutexattr_destroy F >> GLIBC_2.0 __pthread_mutexattr_init F >> GLIBC_2.0 __pthread_mutexattr_settype F >> -GLIBC_2.0 __pthread_once F >> GLIBC_2.0 __pthread_setspecific F >> GLIBC_2.0 __read F >> GLIBC_2.0 __send F >> @@ -60,7 +59,6 @@ GLIBC_2.0 pthread_mutexattr_destroy F >> GLIBC_2.0 pthread_mutexattr_getkind_np F >> GLIBC_2.0 pthread_mutexattr_init F >> GLIBC_2.0 pthread_mutexattr_setkind_np F >> -GLIBC_2.0 pthread_once F >> GLIBC_2.0 pthread_setcancelstate F >> GLIBC_2.0 pthread_setcanceltype F >> GLIBC_2.0 pthread_setspecific F >> diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist >> index 4596ab72b0..16b2483535 100644 >> --- a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist >> @@ -370,6 +370,7 @@ GLIBC_2.2 __printf_fp F >> GLIBC_2.2 __profile_frequency F >> GLIBC_2.2 __progname D 0x8 >> GLIBC_2.2 __progname_full D 0x8 >> +GLIBC_2.2 __pthread_once F >> GLIBC_2.2 __pwrite64 F >> GLIBC_2.2 __rawmemchr F >> GLIBC_2.2 __rcmd_errstr D 0x8 >> @@ -1293,6 +1294,7 @@ GLIBC_2.2 pthread_mutex_destroy F >> GLIBC_2.2 pthread_mutex_init F >> GLIBC_2.2 pthread_mutex_lock F >> GLIBC_2.2 pthread_mutex_unlock F >> +GLIBC_2.2 pthread_once F >> GLIBC_2.2 pthread_self F >> GLIBC_2.2 pthread_setcancelstate F >> GLIBC_2.2 pthread_setcanceltype F >> @@ -2120,7 +2122,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 _IO_fprintf F >> GLIBC_2.4 _IO_printf F >> GLIBC_2.4 _IO_sprintf F >> diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist >> index c21f7cfea6..13a2e8ef91 100644 >> --- a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist >> @@ -31,7 +31,6 @@ GLIBC_2.2 __pthread_mutex_unlock F >> GLIBC_2.2 __pthread_mutexattr_destroy F >> GLIBC_2.2 __pthread_mutexattr_init F >> GLIBC_2.2 __pthread_mutexattr_settype F >> -GLIBC_2.2 __pthread_once F >> GLIBC_2.2 __pthread_rwlock_destroy F >> GLIBC_2.2 __pthread_rwlock_init F >> GLIBC_2.2 __pthread_rwlock_rdlock F >> @@ -109,7 +108,6 @@ GLIBC_2.2 pthread_mutexattr_init F >> GLIBC_2.2 pthread_mutexattr_setkind_np F >> GLIBC_2.2 pthread_mutexattr_setpshared F >> GLIBC_2.2 pthread_mutexattr_settype F >> -GLIBC_2.2 pthread_once F >> GLIBC_2.2 pthread_rwlock_destroy F >> GLIBC_2.2 pthread_rwlock_init F >> GLIBC_2.2 pthread_rwlock_rdlock F >> diff --git a/sysdeps/unix/sysv/linux/sh/be/libc.abilist b/sysdeps/unix/sysv/linux/sh/be/libc.abilist >> index ae16394e8a..a6fd6eb894 100644 >> --- a/sysdeps/unix/sysv/linux/sh/be/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/sh/be/libc.abilist >> @@ -359,6 +359,7 @@ GLIBC_2.2 __printf_fp F >> GLIBC_2.2 __profile_frequency F >> GLIBC_2.2 __progname D 0x4 >> GLIBC_2.2 __progname_full D 0x4 >> +GLIBC_2.2 __pthread_once F >> GLIBC_2.2 __pwrite64 F >> GLIBC_2.2 __rawmemchr F >> GLIBC_2.2 __rcmd_errstr D 0x4 >> @@ -1279,6 +1280,7 @@ GLIBC_2.2 pthread_mutex_destroy F >> GLIBC_2.2 pthread_mutex_init F >> GLIBC_2.2 pthread_mutex_lock F >> GLIBC_2.2 pthread_mutex_unlock F >> +GLIBC_2.2 pthread_once F >> GLIBC_2.2 pthread_self F >> GLIBC_2.2 pthread_setcancelstate F >> GLIBC_2.2 pthread_setcanceltype F >> @@ -2089,7 +2091,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 __confstr_chk F >> GLIBC_2.4 __fgets_chk F >> GLIBC_2.4 __fgets_unlocked_chk F >> diff --git a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist >> index 740570ef37..96c70fb45e 100644 >> --- a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist >> @@ -30,7 +30,6 @@ GLIBC_2.2 __pthread_mutex_unlock F >> GLIBC_2.2 __pthread_mutexattr_destroy F >> GLIBC_2.2 __pthread_mutexattr_init F >> GLIBC_2.2 __pthread_mutexattr_settype F >> -GLIBC_2.2 __pthread_once F >> GLIBC_2.2 __pthread_rwlock_destroy F >> GLIBC_2.2 __pthread_rwlock_init F >> GLIBC_2.2 __pthread_rwlock_rdlock F >> @@ -108,7 +107,6 @@ GLIBC_2.2 pthread_mutexattr_init F >> GLIBC_2.2 pthread_mutexattr_setkind_np F >> GLIBC_2.2 pthread_mutexattr_setpshared F >> GLIBC_2.2 pthread_mutexattr_settype F >> -GLIBC_2.2 pthread_once F >> GLIBC_2.2 pthread_rwlock_destroy F >> GLIBC_2.2 pthread_rwlock_init F >> GLIBC_2.2 pthread_rwlock_rdlock F >> diff --git a/sysdeps/unix/sysv/linux/sh/le/libc.abilist b/sysdeps/unix/sysv/linux/sh/le/libc.abilist >> index 6e45427e90..f4ba7b4ee8 100644 >> --- a/sysdeps/unix/sysv/linux/sh/le/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/sh/le/libc.abilist >> @@ -359,6 +359,7 @@ GLIBC_2.2 __printf_fp F >> GLIBC_2.2 __profile_frequency F >> GLIBC_2.2 __progname D 0x4 >> GLIBC_2.2 __progname_full D 0x4 >> +GLIBC_2.2 __pthread_once F >> GLIBC_2.2 __pwrite64 F >> GLIBC_2.2 __rawmemchr F >> GLIBC_2.2 __rcmd_errstr D 0x4 >> @@ -1279,6 +1280,7 @@ GLIBC_2.2 pthread_mutex_destroy F >> GLIBC_2.2 pthread_mutex_init F >> GLIBC_2.2 pthread_mutex_lock F >> GLIBC_2.2 pthread_mutex_unlock F >> +GLIBC_2.2 pthread_once F >> GLIBC_2.2 pthread_self F >> GLIBC_2.2 pthread_setcancelstate F >> GLIBC_2.2 pthread_setcanceltype F >> @@ -2086,7 +2088,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 __confstr_chk F >> GLIBC_2.4 __fgets_chk F >> GLIBC_2.4 __fgets_unlocked_chk F >> diff --git a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist >> index 740570ef37..96c70fb45e 100644 >> --- a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist >> @@ -30,7 +30,6 @@ GLIBC_2.2 __pthread_mutex_unlock F >> GLIBC_2.2 __pthread_mutexattr_destroy F >> GLIBC_2.2 __pthread_mutexattr_init F >> GLIBC_2.2 __pthread_mutexattr_settype F >> -GLIBC_2.2 __pthread_once F >> GLIBC_2.2 __pthread_rwlock_destroy F >> GLIBC_2.2 __pthread_rwlock_init F >> GLIBC_2.2 __pthread_rwlock_rdlock F >> @@ -108,7 +107,6 @@ GLIBC_2.2 pthread_mutexattr_init F >> GLIBC_2.2 pthread_mutexattr_setkind_np F >> GLIBC_2.2 pthread_mutexattr_setpshared F >> GLIBC_2.2 pthread_mutexattr_settype F >> -GLIBC_2.2 pthread_once F >> GLIBC_2.2 pthread_rwlock_destroy F >> GLIBC_2.2 pthread_rwlock_init F >> GLIBC_2.2 pthread_rwlock_rdlock F >> diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist >> index 080a036590..70c2a92dfc 100644 >> --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist >> @@ -189,6 +189,7 @@ GLIBC_2.0 __printf_fp F >> GLIBC_2.0 __profile_frequency F >> GLIBC_2.0 __progname D 0x4 >> GLIBC_2.0 __progname_full D 0x4 >> +GLIBC_2.0 __pthread_once F >> GLIBC_2.0 __rcmd_errstr D 0x4 >> GLIBC_2.0 __read F >> GLIBC_2.0 __realloc_hook D 0x4 >> @@ -869,6 +870,7 @@ GLIBC_2.0 pthread_mutex_destroy F >> GLIBC_2.0 pthread_mutex_init F >> GLIBC_2.0 pthread_mutex_lock F >> GLIBC_2.0 pthread_mutex_unlock F >> +GLIBC_2.0 pthread_once F >> GLIBC_2.0 pthread_self F >> GLIBC_2.0 pthread_setcancelstate F >> GLIBC_2.0 pthread_setcanceltype F >> @@ -2210,7 +2212,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 _IO_fprintf F >> GLIBC_2.4 _IO_printf F >> GLIBC_2.4 _IO_sprintf F >> diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist >> index e17b5183ef..059ae76802 100644 >> --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist >> @@ -18,7 +18,6 @@ GLIBC_2.0 __pthread_mutex_unlock F >> GLIBC_2.0 __pthread_mutexattr_destroy F >> GLIBC_2.0 __pthread_mutexattr_init F >> GLIBC_2.0 __pthread_mutexattr_settype F >> -GLIBC_2.0 __pthread_once F >> GLIBC_2.0 __pthread_setspecific F >> GLIBC_2.0 __read F >> GLIBC_2.0 __send F >> @@ -60,7 +59,6 @@ GLIBC_2.0 pthread_mutexattr_destroy F >> GLIBC_2.0 pthread_mutexattr_getkind_np F >> GLIBC_2.0 pthread_mutexattr_init F >> GLIBC_2.0 pthread_mutexattr_setkind_np F >> -GLIBC_2.0 pthread_once F >> GLIBC_2.0 pthread_setcancelstate F >> GLIBC_2.0 pthread_setcanceltype F >> GLIBC_2.0 pthread_setspecific F >> diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist >> index c8fb7da49f..6f323b3705 100644 >> --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist >> @@ -397,6 +397,7 @@ GLIBC_2.2 __printf_fp F >> GLIBC_2.2 __profile_frequency F >> GLIBC_2.2 __progname D 0x8 >> GLIBC_2.2 __progname_full D 0x8 >> +GLIBC_2.2 __pthread_once F >> GLIBC_2.2 __pwrite64 F >> GLIBC_2.2 __rawmemchr F >> GLIBC_2.2 __rcmd_errstr D 0x8 >> @@ -1322,6 +1323,7 @@ GLIBC_2.2 pthread_mutex_destroy F >> GLIBC_2.2 pthread_mutex_init F >> GLIBC_2.2 pthread_mutex_lock F >> GLIBC_2.2 pthread_mutex_unlock F >> +GLIBC_2.2 pthread_once F >> GLIBC_2.2 pthread_self F >> GLIBC_2.2 pthread_setcancelstate F >> GLIBC_2.2 pthread_setcanceltype F >> @@ -2137,7 +2139,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 __confstr_chk F >> GLIBC_2.4 __fgets_chk F >> GLIBC_2.4 __fgets_unlocked_chk F >> diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist >> index 0565c43c10..3698acd3e9 100644 >> --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist >> @@ -30,7 +30,6 @@ GLIBC_2.2 __pthread_mutex_unlock F >> GLIBC_2.2 __pthread_mutexattr_destroy F >> GLIBC_2.2 __pthread_mutexattr_init F >> GLIBC_2.2 __pthread_mutexattr_settype F >> -GLIBC_2.2 __pthread_once F >> GLIBC_2.2 __pthread_rwlock_destroy F >> GLIBC_2.2 __pthread_rwlock_init F >> GLIBC_2.2 __pthread_rwlock_rdlock F >> @@ -108,7 +107,6 @@ GLIBC_2.2 pthread_mutexattr_init F >> GLIBC_2.2 pthread_mutexattr_setkind_np F >> GLIBC_2.2 pthread_mutexattr_setpshared F >> GLIBC_2.2 pthread_mutexattr_settype F >> -GLIBC_2.2 pthread_once F >> GLIBC_2.2 pthread_rwlock_destroy F >> GLIBC_2.2 pthread_rwlock_init F >> GLIBC_2.2 pthread_rwlock_rdlock F >> diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist >> index cde6fdb49d..35503c7361 100644 >> --- a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist >> @@ -358,6 +358,7 @@ GLIBC_2.2.5 __printf_fp F >> GLIBC_2.2.5 __profile_frequency F >> GLIBC_2.2.5 __progname D 0x8 >> GLIBC_2.2.5 __progname_full D 0x8 >> +GLIBC_2.2.5 __pthread_once F >> GLIBC_2.2.5 __pwrite64 F >> GLIBC_2.2.5 __rawmemchr F >> GLIBC_2.2.5 __rcmd_errstr D 0x8 >> @@ -1290,6 +1291,7 @@ GLIBC_2.2.5 pthread_mutex_destroy F >> GLIBC_2.2.5 pthread_mutex_init F >> GLIBC_2.2.5 pthread_mutex_lock F >> GLIBC_2.2.5 pthread_mutex_unlock F >> +GLIBC_2.2.5 pthread_once F >> GLIBC_2.2.5 pthread_self F >> GLIBC_2.2.5 pthread_setcancelstate F >> GLIBC_2.2.5 pthread_setcanceltype F >> @@ -2096,7 +2098,9 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> GLIBC_2.4 __confstr_chk F >> GLIBC_2.4 __fgets_chk F >> GLIBC_2.4 __fgets_unlocked_chk F >> diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist >> index f1255816b1..7636fde610 100644 >> --- a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist >> @@ -30,7 +30,6 @@ GLIBC_2.2.5 __pthread_mutex_unlock F >> GLIBC_2.2.5 __pthread_mutexattr_destroy F >> GLIBC_2.2.5 __pthread_mutexattr_init F >> GLIBC_2.2.5 __pthread_mutexattr_settype F >> -GLIBC_2.2.5 __pthread_once F >> GLIBC_2.2.5 __pthread_rwlock_destroy F >> GLIBC_2.2.5 __pthread_rwlock_init F >> GLIBC_2.2.5 __pthread_rwlock_rdlock F >> @@ -108,7 +107,6 @@ GLIBC_2.2.5 pthread_mutexattr_init F >> GLIBC_2.2.5 pthread_mutexattr_setkind_np F >> GLIBC_2.2.5 pthread_mutexattr_setpshared F >> GLIBC_2.2.5 pthread_mutexattr_settype F >> -GLIBC_2.2.5 pthread_once F >> GLIBC_2.2.5 pthread_rwlock_destroy F >> GLIBC_2.2.5 pthread_rwlock_init F >> GLIBC_2.2.5 pthread_rwlock_rdlock F >> diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist >> index e772da1ec4..3af0b4def9 100644 >> --- a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist >> +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist >> @@ -340,6 +340,7 @@ GLIBC_2.16 __profile_frequency F >> GLIBC_2.16 __progname D 0x4 >> GLIBC_2.16 __progname_full D 0x4 >> GLIBC_2.16 __pthread_cleanup_routine F >> +GLIBC_2.16 __pthread_once F >> GLIBC_2.16 __ptsname_r_chk F >> GLIBC_2.16 __pwrite64 F >> GLIBC_2.16 __rawmemchr F >> @@ -1461,6 +1462,7 @@ GLIBC_2.16 pthread_mutex_destroy F >> GLIBC_2.16 pthread_mutex_init F >> GLIBC_2.16 pthread_mutex_lock F >> GLIBC_2.16 pthread_mutex_unlock F >> +GLIBC_2.16 pthread_once F >> GLIBC_2.16 pthread_self F >> GLIBC_2.16 pthread_setcancelstate F >> GLIBC_2.16 pthread_setcanceltype F >> @@ -2194,4 +2196,6 @@ GLIBC_2.33 stat F >> GLIBC_2.33 stat64 F >> GLIBC_2.34 __libc_start_main F >> GLIBC_2.34 __pthread_cleanup_routine F >> +GLIBC_2.34 __pthread_once F >> GLIBC_2.34 pthread_mutex_consistent F >> +GLIBC_2.34 pthread_once F >> diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist >> index fdaff69ea6..d15de68e7e 100644 >> --- a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist >> +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist >> @@ -23,7 +23,6 @@ GLIBC_2.16 __pthread_mutex_unlock F >> GLIBC_2.16 __pthread_mutexattr_destroy F >> GLIBC_2.16 __pthread_mutexattr_init F >> GLIBC_2.16 __pthread_mutexattr_settype F >> -GLIBC_2.16 __pthread_once F >> GLIBC_2.16 __pthread_register_cancel F >> GLIBC_2.16 __pthread_register_cancel_defer F >> GLIBC_2.16 __pthread_rwlock_destroy F >> @@ -120,7 +119,6 @@ GLIBC_2.16 pthread_mutexattr_setpshared F >> GLIBC_2.16 pthread_mutexattr_setrobust F >> GLIBC_2.16 pthread_mutexattr_setrobust_np F >> GLIBC_2.16 pthread_mutexattr_settype F >> -GLIBC_2.16 pthread_once F >> GLIBC_2.16 pthread_rwlock_destroy F >> GLIBC_2.16 pthread_rwlock_init F >> GLIBC_2.16 pthread_rwlock_rdlock F >> > > Ok. >