From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-qk1-x72a.google.com (mail-qk1-x72a.google.com [IPv6:2607:f8b0:4864:20::72a]) by sourceware.org (Postfix) with ESMTPS id BA37B3857815 for ; Thu, 20 May 2021 20:44:25 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org BA37B3857815 Received: by mail-qk1-x72a.google.com with SMTP id 76so17601185qkn.13 for ; Thu, 20 May 2021 13:44:25 -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=To/ht1xy0FIV9eCG1q+5Aba9qmB6wZvgBZR3aUGYhas=; b=nV3smBhWEuR9d+/oMoP6WRBRxfhTXVPyGirwy2O08g6YYX96NBmrxOAFVymFmxn1E8 oUe9ObAJtPyC7g7vGu/57bqW8e2H4DOqaGOOK1mP+lhgKY3Aac7msqGA/McAZNmDsweR YAkkupwIVvhwjFAyveU9A/oXAV2zXQzkjgDtnOapbdo4vX6SrXjzrkLyJFIB0vfVccfH ONalosBnvdPomSB3wM4qJFtoGu6u4lWEY8WkHy5XJFg3VTnUZDn+gbudDdbDyXlCGNKu gCC1VPse1AhM1d/rtgmci9P0N9lnZmQ45H5kZ2suOnpLboLKh6a9do0OvxKEOteK4aeG r1Ow== X-Gm-Message-State: AOAM5323b0jlma7/so9v4LY6+aVrrkzTDsJgzvb2Y/W6JOoi7/HWDrxw bRloE6d8gvrzICzEfyydzCxGu4ku33zZbg== X-Google-Smtp-Source: ABdhPJxgASzkHIyEhOdogU61iTnhSu6uqtkYyN/gAKDiasP0+kJhsYnEEU4iiRIywTnbX99N/LgY6Q== X-Received: by 2002:ae9:e406:: with SMTP id q6mr7413044qkc.406.1621543464445; Thu, 20 May 2021 13:44:24 -0700 (PDT) Received: from [192.168.1.4] ([177.194.37.86]) by smtp.gmail.com with ESMTPSA id h5sm3219637qkg.122.2021.05.20.13.44.22 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 20 May 2021 13:44:24 -0700 (PDT) Subject: Re: [PATCH 05/10] nptl: Move pthread_create, thrd_create into libc To: Florian Weimer , libc-alpha@sourceware.org References: From: Adhemerval Zanella Message-ID: <8d06a5ad-1b44-e922-2a4c-9292df1a18e2@linaro.org> Date: Thu, 20 May 2021 17:44:21 -0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.8.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-11.9 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, KAM_SHORT, NICE_REPLY_A, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, URIBL_BLACK 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, 20 May 2021 20:44:33 -0000 On 18/05/2021 11:25, Florian Weimer via Libc-alpha wrote: > The symbols were moved using scripts/move-symbol-to-libc.py. > > The libpthread placeholder symbols need some changes because some > symbol versions have gone away completely. But > __errno_location@@GLIBC_2.0 still exists, so the GLIBC_2.0 version > is still there. > > The internal __pthread_create symbol now points to the correct > function, so the sysdeps/nptl/thrd_create.c override is no longer > necessary. > > There was an issue how the hidden alias of pthread_getattr_default_np > was defined, so this commit cleans up that aspects and removes the > GLIBC_PRIVATE export altogether. LGTM, thanks. Reviewed-by: Adhemerval Zanella > --- > include/libc-internal.h | 6 ++++- > nptl/Makefile | 2 +- > nptl/Versions | 14 +++++++---- > nptl/libpthread-compat.c | 24 +++++++++---------- > nptl/pthreadP.h | 7 +++--- > nptl/pthread_create.c | 11 +++++++-- > nptl/pthread_getattr_default_np.c | 6 +++-- > nptl_db/Makefile | 2 +- > nptl_db/structs.def | 10 ++++---- > sysdeps/nptl/thrd_create.c | 2 -- > sysdeps/pthread/Makefile | 3 +-- > sysdeps/pthread/thrd_create.c | 11 ++++++++- > sysdeps/unix/sysv/linux/aarch64/libc.abilist | 4 ++++ > .../sysv/linux/aarch64/libpthread.abilist | 3 +-- > sysdeps/unix/sysv/linux/alpha/libc.abilist | 5 ++++ > .../unix/sysv/linux/alpha/libpthread.abilist | 5 ++-- > 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 | 3 +-- > sysdeps/unix/sysv/linux/arm/le/libc.abilist | 4 ++++ > .../unix/sysv/linux/arm/le/libpthread.abilist | 3 +-- > 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 | 3 +-- > sysdeps/unix/sysv/linux/i386/libc.abilist | 5 ++++ > .../unix/sysv/linux/i386/libpthread.abilist | 5 ++-- > sysdeps/unix/sysv/linux/ia64/libc.abilist | 4 ++++ > .../unix/sysv/linux/ia64/libpthread.abilist | 3 +-- > .../sysv/linux/m68k/coldfire/libc.abilist | 4 ++++ > .../linux/m68k/coldfire/libpthread.abilist | 3 +-- > .../unix/sysv/linux/m68k/m680x0/libc.abilist | 5 ++++ > .../sysv/linux/m68k/m680x0/libpthread.abilist | 5 ++-- > .../sysv/linux/microblaze/be/libc.abilist | 4 ++++ > .../linux/microblaze/be/libpthread.abilist | 3 +-- > .../sysv/linux/microblaze/le/libc.abilist | 4 ++++ > .../linux/microblaze/le/libpthread.abilist | 3 +-- > .../sysv/linux/mips/mips32/fpu/libc.abilist | 5 ++++ > .../sysv/linux/mips/mips32/libpthread.abilist | 5 ++-- > .../sysv/linux/mips/mips32/nofpu/libc.abilist | 5 ++++ > .../sysv/linux/mips/mips64/libpthread.abilist | 5 ++-- > .../sysv/linux/mips/mips64/n32/libc.abilist | 5 ++++ > .../sysv/linux/mips/mips64/n64/libc.abilist | 5 ++++ > sysdeps/unix/sysv/linux/nios2/libc.abilist | 4 ++++ > .../unix/sysv/linux/nios2/libpthread.abilist | 3 +-- > .../linux/powerpc/powerpc32/fpu/libc.abilist | 5 ++++ > .../powerpc/powerpc32/libpthread.abilist | 5 ++-- > .../powerpc/powerpc32/nofpu/libc.abilist | 5 ++++ > .../linux/powerpc/powerpc64/be/libc.abilist | 4 ++++ > .../powerpc/powerpc64/be/libpthread.abilist | 3 +-- > .../linux/powerpc/powerpc64/le/libc.abilist | 4 ++++ > .../powerpc/powerpc64/le/libpthread.abilist | 3 +-- > .../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 | 3 +-- > .../unix/sysv/linux/s390/s390-32/libc.abilist | 5 ++++ > .../linux/s390/s390-32/libpthread.abilist | 5 ++-- > .../unix/sysv/linux/s390/s390-64/libc.abilist | 4 ++++ > .../linux/s390/s390-64/libpthread.abilist | 3 +-- > sysdeps/unix/sysv/linux/sh/be/libc.abilist | 4 ++++ > .../unix/sysv/linux/sh/be/libpthread.abilist | 3 +-- > sysdeps/unix/sysv/linux/sh/le/libc.abilist | 4 ++++ > .../unix/sysv/linux/sh/le/libpthread.abilist | 3 +-- > .../sysv/linux/sparc/sparc32/libc.abilist | 5 ++++ > .../linux/sparc/sparc32/libpthread.abilist | 5 ++-- > .../sysv/linux/sparc/sparc64/libc.abilist | 4 ++++ > .../linux/sparc/sparc64/libpthread.abilist | 3 +-- > .../unix/sysv/linux/x86_64/64/libc.abilist | 4 ++++ > .../sysv/linux/x86_64/64/libpthread.abilist | 3 +-- > .../unix/sysv/linux/x86_64/x32/libc.abilist | 4 ++++ > .../sysv/linux/x86_64/x32/libpthread.abilist | 3 +-- > 73 files changed, 233 insertions(+), 104 deletions(-) > delete mode 100644 sysdeps/nptl/thrd_create.c > > diff --git a/include/libc-internal.h b/include/libc-internal.h > index 5b18c7c9f2..749dfb919c 100644 > --- a/include/libc-internal.h > +++ b/include/libc-internal.h > @@ -38,7 +38,11 @@ extern void __libc_freeres (void); > libc_hidden_proto (__libc_freeres) > > /* Free resources stored in thread-local variables on thread exit. */ > -extern void __libc_thread_freeres (void); > +extern void __libc_thread_freeres (void) > +#if PTHREAD_IN_LIBC > + attribute_hidden > +#endif > + ; > > /* Define and initialize `__progname' et. al. */ Ok. > extern void __init_misc (int, char **, char **) attribute_hidden; > diff --git a/nptl/Makefile b/nptl/Makefile > index bd5a9ce51f..7426997a83 100644 > --- a/nptl/Makefile > +++ b/nptl/Makefile > @@ -109,6 +109,7 @@ routines = \ > pthread_condattr_init \ > pthread_condattr_setclock \ > pthread_condattr_setpshared \ > + pthread_create \ > pthread_detach \ > pthread_equal \ > pthread_exit \ > @@ -211,7 +212,6 @@ libpthread-routines = \ > libpthread-compat \ > nptl-init \ > pt-interp \ > - pthread_create \ > version \ > > libpthread-shared-only-routines = \ Ok. > diff --git a/nptl/Versions b/nptl/Versions > index 845001847b..0db56bce29 100644 > --- a/nptl/Versions > +++ b/nptl/Versions > @@ -38,6 +38,7 @@ libc { > pthread_cond_wait; > pthread_condattr_destroy; > pthread_condattr_init; > + pthread_create; > pthread_detach; > pthread_equal; > pthread_exit; > @@ -80,6 +81,7 @@ libc { > pthread_attr_setguardsize; > pthread_attr_setstackaddr; > pthread_attr_setstacksize; > + pthread_create; > pthread_getconcurrency; > pthread_mutexattr_gettype; > pthread_mutexattr_settype; > @@ -217,6 +219,7 @@ libc { > mtx_trylock; > mtx_unlock; > thrd_current; > + thrd_create; > thrd_detach; > thrd_equal; > thrd_exit; > @@ -358,6 +361,7 @@ libc { > sem_trywait; > sem_unlink; > sem_wait; > + thrd_create; > thrd_detach; > thrd_exit; > thrd_join; Ok. > @@ -409,8 +413,6 @@ libc { > __pthread_enable_asynccancel; > __pthread_force_elision; > __pthread_get_minstack; > - __pthread_getattr_default_np; > - __pthread_getattr_default_np; > __pthread_keys; > __pthread_mutex_unlock_usercnt; > __pthread_setcancelstate; Ok. > @@ -438,7 +440,7 @@ libpthread { > } > > GLIBC_2.1 { > - pthread_create; > + __libpthread_version_placeholder; > } > > GLIBC_2.1.1 { > @@ -495,9 +497,11 @@ libpthread { > GLIBC_2.19 { > } > > - # C11 thread symbols. > GLIBC_2.28 { > - thrd_create; > + __libpthread_version_placeholder; > + } > + > + GLIBC_2.29 { > } > > GLIBC_2.30 { Ok. > diff --git a/nptl/libpthread-compat.c b/nptl/libpthread-compat.c > index 7e3e7aa0c3..2dcf175f3f 100644 > --- a/nptl/libpthread-compat.c > +++ b/nptl/libpthread-compat.c > @@ -28,14 +28,11 @@ __libpthread_version_placeholder_1 (void) > } > #endif > > -/* This is an unused compatibility symbol definition, to prevent ld > - from creating a weak version definition for GLIBC_2.1.2. (__vfork > - used to be defined at that version, but it is now provided by libc, > - and there are no versions left in libpthread for that symbol > - version.) If the ABI baseline for glibc is the GLIBC_2.2 symbol > - version or later, the placeholder symbol is not needed because > - there are plenty of other symbols which populate those later > - versions. */ > +#if (SHLIB_COMPAT (libpthread, GLIBC_2_1, GLIBC_2_2)) > +compat_symbol (libpthread, __libpthread_version_placeholder_1, > + __libpthread_version_placeholder, GLIBC_2_1); > +#endif > + > #if (SHLIB_COMPAT (libpthread, GLIBC_2_1_1, GLIBC_2_1_2)) > compat_symbol (libpthread, __libpthread_version_placeholder_1, > __libpthread_version_placeholder, GLIBC_2_1_1); Ok. > @@ -45,12 +42,8 @@ compat_symbol (libpthread, __libpthread_version_placeholder_1, > __libpthread_version_placeholder, GLIBC_2_1_2); > #endif > > -/* Do not create the placeholder symbol version if there are other > - symbols left that keep the version around (because GLIBC_2.0 got > - promoted to GLIBC_2.2). */ > #if SHLIB_COMPAT (libpthread, GLIBC_2_2, GLIBC_2_2_3) \ > - && ABI_libpthread_GLIBC_2_2 != ABI_libpthread_GLIBC_2_0 \ > - && ABI_libpthread_GLIBC_2_2 != ABI_libpthread_GLIBC_2_1_3 > + && ABI_libpthread_GLIBC_2_2 != ABI_libpthread_GLIBC_2_0 > compat_symbol (libpthread, __libpthread_version_placeholder_1, > __libpthread_version_placeholder, GLIBC_2_2); > #endif Ok. > @@ -101,6 +94,11 @@ compat_symbol (libpthread, __libpthread_version_placeholder_1, > __libpthread_version_placeholder, GLIBC_2_18); > #endif > > +#if (SHLIB_COMPAT (libpthread, GLIBC_2_28, GLIBC_2_29)) > +compat_symbol (libpthread, __libpthread_version_placeholder_1, > + __libpthread_version_placeholder, GLIBC_2_28); > +#endif > + > #if (SHLIB_COMPAT (libpthread, GLIBC_2_30, GLIBC_2_31)) > compat_symbol (libpthread, __libpthread_version_placeholder_1, > __libpthread_version_placeholder, GLIBC_2_30); Ok. > diff --git a/nptl/pthreadP.h b/nptl/pthreadP.h > index 3151842891..05f2bae521 100644 > --- a/nptl/pthreadP.h > +++ b/nptl/pthreadP.h > @@ -314,9 +314,10 @@ libc_hidden_proto (__pthread_cleanup_upto) > > > /* Functions with versioned interfaces. */ > -extern int __pthread_create_2_1 (pthread_t *newthread, > - const pthread_attr_t *attr, > - void *(*start_routine) (void *), void *arg); > +extern int __pthread_create (pthread_t *newthread, > + const pthread_attr_t *attr, > + void *(*start_routine) (void *), void *arg); > +libc_hidden_proto (__pthread_create) > extern int __pthread_create_2_0 (pthread_t *newthread, > const pthread_attr_t *attr, > void *(*start_routine) (void *), void *arg); Ok. > diff --git a/nptl/pthread_create.c b/nptl/pthread_create.c > index 438b8a7ae1..5680687efe 100644 > --- a/nptl/pthread_create.c > +++ b/nptl/pthread_create.c > @@ -762,10 +762,17 @@ __pthread_create_2_1 (pthread_t *newthread, const pthread_attr_t *attr, > > return retval; > } > -versioned_symbol (libpthread, __pthread_create_2_1, pthread_create, GLIBC_2_1); > +versioned_symbol (libc, __pthread_create_2_1, pthread_create, GLIBC_2_34); > +libc_hidden_ver (__pthread_create_2_1, __pthread_create) > +#ifndef SHARED > +strong_alias (__pthread_create_2_1, __pthread_create) > +#endif > > +#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_1, GLIBC_2_34) > +compat_symbol (libpthread, __pthread_create_2_1, pthread_create, GLIBC_2_1); > +#endif > > -#if SHLIB_COMPAT(libpthread, GLIBC_2_0, GLIBC_2_1) > +#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_0, GLIBC_2_1) > int > __pthread_create_2_0 (pthread_t *newthread, const pthread_attr_t *attr, > void *(*start_routine) (void *), void *arg) Ok. > diff --git a/nptl/pthread_getattr_default_np.c b/nptl/pthread_getattr_default_np.c > index f38f687431..ad10a27339 100644 > --- a/nptl/pthread_getattr_default_np.c > +++ b/nptl/pthread_getattr_default_np.c > @@ -29,8 +29,10 @@ ___pthread_getattr_default_np (pthread_attr_t *out) > } > versioned_symbol (libc, ___pthread_getattr_default_np, > pthread_getattr_default_np, GLIBC_2_34); > -versioned_symbol (libc, ___pthread_getattr_default_np, > - __pthread_getattr_default_np, GLIBC_PRIVATE); > +libc_hidden_ver (___pthread_getattr_default_np, __pthread_getattr_default_np) > +#ifndef SHARED > +strong_alias (___pthread_getattr_default_np, __pthread_getattr_default_np) > +#endif > > #if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_18, GLIBC_2_34) > compat_symbol (libpthread, ___pthread_getattr_default_np, Ok. > diff --git a/nptl_db/Makefile b/nptl_db/Makefile > index 8873a0a0ee..ea721c1dcf 100644 > --- a/nptl_db/Makefile > +++ b/nptl_db/Makefile > @@ -56,7 +56,7 @@ tests-special += $(objpfx)db-symbols.out > include ../Rules > > $(objpfx)db-symbols.out: $(objpfx)db-symbols.v.i \ > - $(common-objpfx)nptl/libpthread.so > + $(common-objpfx)libc.so > LC_ALL=C $(READELF) -W -s $(filter %.so,$^) | $(AWK) -f $< > $@; \ > $(evaluate-test) > Ok. > diff --git a/nptl_db/structs.def b/nptl_db/structs.def > index 71c9f7bfc2..6a726f207e 100644 > --- a/nptl_db/structs.def > +++ b/nptl_db/structs.def > @@ -1,4 +1,4 @@ > -/* List of types and symbols in libpthread examined by libthread_db. > +/* List of types and symbols in libc examined by libthread_db. > Copyright (C) 2003-2021 Free Software Foundation, Inc. > This file is part of the GNU C Library. > > @@ -27,7 +27,7 @@ > #endif > > /* DB_MAIN_VARIABLE, DB_MAIN_SYMBOL, DB_MAIN_ARRAY_VARIABLE are not > - covered by the libpthread symbol check in db-symbols.awk. */ > + covered by the libc symbol check in db-symbols.awk. */ > #ifndef DB_MAIN_VARIABLE > # define DB_MAIN_VARIABLE(name) DB_VARIABLE (name) > #endif > @@ -39,7 +39,7 @@ > #endif > > #ifndef DB_RTLD_GLOBAL_FIELD > -# if !IS_IN (libpthread) > +# if !IS_IN (libc) > # define DB_RTLD_GLOBAL_FIELD(field) \ > DB_STRUCT_FIELD (rtld_global, _##field) \ > DB_MAIN_VARIABLE (_##field) Ok. > @@ -103,11 +103,11 @@ DB_STRUCT_ARRAY_FIELD (dtv, dtv) > #define pointer_val pointer.val /* Field of anonymous struct in dtv_t. */ > DB_STRUCT_FIELD (dtv_t, pointer_val) > DB_STRUCT_FIELD (dtv_t, counter) > -#if !IS_IN (libpthread) || TLS_TCB_AT_TP > +#if !IS_IN (libc) || TLS_TCB_AT_TP > DB_STRUCT_FIELD (pthread, dtvp) > #endif > > -#if !(IS_IN (libpthread) && !defined SHARED) > +#if !(IS_IN (libc) && !defined SHARED) > DB_VARIABLE (__nptl_rtld_global) > #endif > DB_RTLD_GLOBAL_FIELD (dl_tls_dtv_slotinfo_list) Ok. > diff --git a/sysdeps/nptl/thrd_create.c b/sysdeps/nptl/thrd_create.c > deleted file mode 100644 > index 596a7ba588..0000000000 > --- a/sysdeps/nptl/thrd_create.c > +++ /dev/null > @@ -1,2 +0,0 @@ > -#define __pthread_create __pthread_create_2_1 > -#include Ok. > diff --git a/sysdeps/pthread/Makefile b/sysdeps/pthread/Makefile > index b15d085f51..bca642f438 100644 > --- a/sysdeps/pthread/Makefile > +++ b/sysdeps/pthread/Makefile > @@ -31,8 +31,6 @@ headers += threads.h > > routines += thrd_current thrd_equal thrd_sleep thrd_yield > > -libpthread-routines += thrd_create > - > $(libpthread-routines-var) += \ > call_once \ > cnd_broadcast \ > @@ -47,6 +45,7 @@ $(libpthread-routines-var) += \ > mtx_timedlock \ > mtx_trylock \ > mtx_unlock \ > + thrd_create \ > thrd_detach \ > thrd_exit \ > thrd_join \ Ok. > diff --git a/sysdeps/pthread/thrd_create.c b/sysdeps/pthread/thrd_create.c > index 07848c0aab..3cb9f1cefb 100644 > --- a/sysdeps/pthread/thrd_create.c > +++ b/sysdeps/pthread/thrd_create.c > @@ -17,9 +17,10 @@ > . */ > > #include "thrd_priv.h" > +#include > > int > -thrd_create (thrd_t *thr, thrd_start_t func, void *arg) > +__thrd_create (thrd_t *thr, thrd_start_t func, void *arg) > { > _Static_assert (sizeof (thrd_t) == sizeof (pthread_t), > "sizeof (thrd_t) != sizeof (pthread_t)"); > @@ -28,3 +29,11 @@ thrd_create (thrd_t *thr, thrd_start_t func, void *arg) > (void* (*) (void*))func, arg); > return thrd_err_map (err_code); > } > +#if PTHREAD_IN_LIBC > +versioned_symbol (libc, __thrd_create, thrd_create, GLIBC_2_34); > +# if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_28, GLIBC_2_34) > +compat_symbol (libc, __thrd_create, thrd_create, GLIBC_2_28); > +# endif > +#else /* !PTHREAD_IN_LIBC */ > +strong_alias (__thrd_create, thrd_create) > +#endif Ok. > diff --git a/sysdeps/unix/sysv/linux/aarch64/libc.abilist b/sysdeps/unix/sysv/linux/aarch64/libc.abilist > index bc051ba9f5..d22c7da7ef 100644 > --- a/sysdeps/unix/sysv/linux/aarch64/libc.abilist > +++ b/sysdeps/unix/sysv/linux/aarch64/libc.abilist > @@ -1488,6 +1488,7 @@ GLIBC_2.17 pthread_condattr_getpshared F > GLIBC_2.17 pthread_condattr_init F > GLIBC_2.17 pthread_condattr_setclock F > GLIBC_2.17 pthread_condattr_setpshared F > +GLIBC_2.17 pthread_create F > GLIBC_2.17 pthread_detach F > GLIBC_2.17 pthread_equal F > GLIBC_2.17 pthread_exit F > @@ -2277,6 +2278,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2370,6 +2372,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2442,6 +2445,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist > index 3c03fcc17b..14ada15a35 100644 > --- a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist > @@ -1,6 +1,5 @@ > GLIBC_2.17 __errno_location F > -GLIBC_2.17 pthread_create F > GLIBC_2.18 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.30 __libpthread_version_placeholder F > GLIBC_2.31 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/alpha/libc.abilist b/sysdeps/unix/sysv/linux/alpha/libc.abilist > index 3bea473d00..cefff3bf36 100644 > --- a/sysdeps/unix/sysv/linux/alpha/libc.abilist > +++ b/sysdeps/unix/sysv/linux/alpha/libc.abilist > @@ -898,6 +898,7 @@ GLIBC_2.0 pthread_cond_timedwait F > GLIBC_2.0 pthread_cond_wait F > GLIBC_2.0 pthread_condattr_destroy F > GLIBC_2.0 pthread_condattr_init F > +GLIBC_2.0 pthread_create F > GLIBC_2.0 pthread_detach F > GLIBC_2.0 pthread_equal F > GLIBC_2.0 pthread_exit F > @@ -1620,6 +1621,7 @@ GLIBC_2.1 pthread_attr_init F > GLIBC_2.1 pthread_attr_setguardsize F > GLIBC_2.1 pthread_attr_setstackaddr F > GLIBC_2.1 pthread_attr_setstacksize F > +GLIBC_2.1 pthread_create F > GLIBC_2.1 pthread_getconcurrency F > GLIBC_2.1 pthread_mutexattr_gettype F > GLIBC_2.1 pthread_mutexattr_settype F > @@ -2166,6 +2168,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2461,6 +2464,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2533,6 +2537,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist > index c8f065b787..47cbcf3baf 100644 > --- a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist > @@ -1,6 +1,5 @@ > GLIBC_2.0 __errno_location F > -GLIBC_2.0 pthread_create F > -GLIBC_2.1 pthread_create F > +GLIBC_2.1 __libpthread_version_placeholder F > GLIBC_2.1.1 __libpthread_version_placeholder F > GLIBC_2.1.2 __libpthread_version_placeholder F > GLIBC_2.11 __libpthread_version_placeholder F > @@ -9,7 +8,7 @@ GLIBC_2.18 __libpthread_version_placeholder F > GLIBC_2.2 __libpthread_version_placeholder F > GLIBC_2.2.3 __libpthread_version_placeholder F > GLIBC_2.2.6 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.3.2 __libpthread_version_placeholder F > GLIBC_2.3.3 __libpthread_version_placeholder F > GLIBC_2.3.4 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/arc/libc.abilist b/sysdeps/unix/sysv/linux/arc/libc.abilist > index 3461527c5a..91a90f8ca4 100644 > --- a/sysdeps/unix/sysv/linux/arc/libc.abilist > +++ b/sysdeps/unix/sysv/linux/arc/libc.abilist > @@ -1429,6 +1429,7 @@ GLIBC_2.32 pthread_condattr_getpshared F > GLIBC_2.32 pthread_condattr_init F > GLIBC_2.32 pthread_condattr_setclock F > GLIBC_2.32 pthread_condattr_setpshared F > +GLIBC_2.32 pthread_create F > GLIBC_2.32 pthread_detach F > GLIBC_2.32 pthread_equal F > GLIBC_2.32 pthread_exit F > @@ -1889,6 +1890,7 @@ GLIBC_2.32 tempnam F > GLIBC_2.32 textdomain F > GLIBC_2.32 tfind F > GLIBC_2.32 tgkill F > +GLIBC_2.32 thrd_create F > GLIBC_2.32 thrd_current F > GLIBC_2.32 thrd_detach F > GLIBC_2.32 thrd_equal F > @@ -2129,6 +2131,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2201,6 +2204,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/arc/libpthread.abilist b/sysdeps/unix/sysv/linux/arc/libpthread.abilist > index 1d363aa47f..c4264810e6 100644 > --- a/sysdeps/unix/sysv/linux/arc/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/arc/libpthread.abilist > @@ -1,3 +1 @@ > GLIBC_2.32 __errno_location F > -GLIBC_2.32 pthread_create F > -GLIBC_2.32 thrd_create F > diff --git a/sysdeps/unix/sysv/linux/arm/be/libc.abilist b/sysdeps/unix/sysv/linux/arm/be/libc.abilist > index 7c3029a7e5..120288d766 100644 > --- a/sysdeps/unix/sysv/linux/arm/be/libc.abilist > +++ b/sysdeps/unix/sysv/linux/arm/be/libc.abilist > @@ -140,6 +140,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -236,6 +237,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -308,6 +310,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > @@ -1740,6 +1743,7 @@ GLIBC_2.4 pthread_condattr_getpshared F > GLIBC_2.4 pthread_condattr_init F > GLIBC_2.4 pthread_condattr_setclock F > GLIBC_2.4 pthread_condattr_setpshared F > +GLIBC_2.4 pthread_create F > GLIBC_2.4 pthread_detach F > GLIBC_2.4 pthread_equal F > GLIBC_2.4 pthread_exit F > diff --git a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist > index 0ad6524820..f8ebb4cae2 100644 > --- a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist > @@ -1,9 +1,8 @@ > GLIBC_2.11 __libpthread_version_placeholder F > GLIBC_2.12 __libpthread_version_placeholder F > GLIBC_2.18 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.30 __libpthread_version_placeholder F > GLIBC_2.31 __libpthread_version_placeholder F > GLIBC_2.4 __errno_location F > GLIBC_2.4 __libpthread_version_placeholder F > -GLIBC_2.4 pthread_create F > diff --git a/sysdeps/unix/sysv/linux/arm/le/libc.abilist b/sysdeps/unix/sysv/linux/arm/le/libc.abilist > index 24f5b202e8..be987da77e 100644 > --- a/sysdeps/unix/sysv/linux/arm/le/libc.abilist > +++ b/sysdeps/unix/sysv/linux/arm/le/libc.abilist > @@ -140,6 +140,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -233,6 +234,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -305,6 +307,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > @@ -1737,6 +1740,7 @@ GLIBC_2.4 pthread_condattr_getpshared F > GLIBC_2.4 pthread_condattr_init F > GLIBC_2.4 pthread_condattr_setclock F > GLIBC_2.4 pthread_condattr_setpshared F > +GLIBC_2.4 pthread_create F > GLIBC_2.4 pthread_detach F > GLIBC_2.4 pthread_equal F > GLIBC_2.4 pthread_exit F > diff --git a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist > index 0ad6524820..f8ebb4cae2 100644 > --- a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist > @@ -1,9 +1,8 @@ > GLIBC_2.11 __libpthread_version_placeholder F > GLIBC_2.12 __libpthread_version_placeholder F > GLIBC_2.18 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.30 __libpthread_version_placeholder F > GLIBC_2.31 __libpthread_version_placeholder F > GLIBC_2.4 __errno_location F > GLIBC_2.4 __libpthread_version_placeholder F > -GLIBC_2.4 pthread_create F > diff --git a/sysdeps/unix/sysv/linux/csky/libc.abilist b/sysdeps/unix/sysv/linux/csky/libc.abilist > index 85851c5fca..adb4e15cb8 100644 > --- a/sysdeps/unix/sysv/linux/csky/libc.abilist > +++ b/sysdeps/unix/sysv/linux/csky/libc.abilist > @@ -1488,6 +1488,7 @@ GLIBC_2.29 pthread_condattr_getpshared F > GLIBC_2.29 pthread_condattr_init F > GLIBC_2.29 pthread_condattr_setclock F > GLIBC_2.29 pthread_condattr_setpshared F > +GLIBC_2.29 pthread_create F > GLIBC_2.29 pthread_detach F > GLIBC_2.29 pthread_equal F > GLIBC_2.29 pthread_exit F > @@ -1979,6 +1980,7 @@ GLIBC_2.29 telldir F > GLIBC_2.29 tempnam F > GLIBC_2.29 textdomain F > GLIBC_2.29 tfind F > +GLIBC_2.29 thrd_create F > GLIBC_2.29 thrd_current F > GLIBC_2.29 thrd_detach F > GLIBC_2.29 thrd_equal F > @@ -2313,6 +2315,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2385,6 +2388,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/csky/libpthread.abilist b/sysdeps/unix/sysv/linux/csky/libpthread.abilist > index d2f66f45ff..f7649b87b2 100644 > --- a/sysdeps/unix/sysv/linux/csky/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/csky/libpthread.abilist > @@ -1,5 +1,3 @@ > GLIBC_2.29 __errno_location F > -GLIBC_2.29 pthread_create F > -GLIBC_2.29 thrd_create F > GLIBC_2.30 __libpthread_version_placeholder F > GLIBC_2.31 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/hppa/libc.abilist b/sysdeps/unix/sysv/linux/hppa/libc.abilist > index ede69c7ed5..bd022276e8 100644 > --- a/sysdeps/unix/sysv/linux/hppa/libc.abilist > +++ b/sysdeps/unix/sysv/linux/hppa/libc.abilist > @@ -1312,6 +1312,7 @@ GLIBC_2.2 pthread_condattr_destroy F > GLIBC_2.2 pthread_condattr_getpshared F > GLIBC_2.2 pthread_condattr_init F > GLIBC_2.2 pthread_condattr_setpshared F > +GLIBC_2.2 pthread_create F > GLIBC_2.2 pthread_detach F > GLIBC_2.2 pthread_equal F > GLIBC_2.2 pthread_exit F > @@ -1999,6 +2000,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2266,6 +2268,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2338,6 +2341,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist > index cc941573b6..f1adf37ff2 100644 > --- a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist > @@ -2,10 +2,9 @@ GLIBC_2.11 __libpthread_version_placeholder F > GLIBC_2.12 __libpthread_version_placeholder F > GLIBC_2.18 __libpthread_version_placeholder F > GLIBC_2.2 __errno_location F > -GLIBC_2.2 pthread_create F > GLIBC_2.2.3 __libpthread_version_placeholder F > GLIBC_2.2.6 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.3.2 __libpthread_version_placeholder F > GLIBC_2.3.3 __libpthread_version_placeholder F > GLIBC_2.3.4 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/i386/libc.abilist b/sysdeps/unix/sysv/linux/i386/libc.abilist > index c883dc08bc..9e37e1cb38 100644 > --- a/sysdeps/unix/sysv/linux/i386/libc.abilist > +++ b/sysdeps/unix/sysv/linux/i386/libc.abilist > @@ -875,6 +875,7 @@ GLIBC_2.0 pthread_cond_timedwait F > GLIBC_2.0 pthread_cond_wait F > GLIBC_2.0 pthread_condattr_destroy F > GLIBC_2.0 pthread_condattr_init F > +GLIBC_2.0 pthread_create F > GLIBC_2.0 pthread_detach F > GLIBC_2.0 pthread_equal F > GLIBC_2.0 pthread_exit F > @@ -1588,6 +1589,7 @@ GLIBC_2.1 pthread_attr_init F > GLIBC_2.1 pthread_attr_setguardsize F > GLIBC_2.1 pthread_attr_setstackaddr F > GLIBC_2.1 pthread_attr_setstacksize F > +GLIBC_2.1 pthread_create F > GLIBC_2.1 pthread_getconcurrency F > GLIBC_2.1 pthread_mutexattr_gettype F > GLIBC_2.1 pthread_mutexattr_settype F > @@ -2179,6 +2181,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2449,6 +2452,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2521,6 +2525,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/i386/libpthread.abilist b/sysdeps/unix/sysv/linux/i386/libpthread.abilist > index c8f065b787..47cbcf3baf 100644 > --- a/sysdeps/unix/sysv/linux/i386/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/i386/libpthread.abilist > @@ -1,6 +1,5 @@ > GLIBC_2.0 __errno_location F > -GLIBC_2.0 pthread_create F > -GLIBC_2.1 pthread_create F > +GLIBC_2.1 __libpthread_version_placeholder F > GLIBC_2.1.1 __libpthread_version_placeholder F > GLIBC_2.1.2 __libpthread_version_placeholder F > GLIBC_2.11 __libpthread_version_placeholder F > @@ -9,7 +8,7 @@ GLIBC_2.18 __libpthread_version_placeholder F > GLIBC_2.2 __libpthread_version_placeholder F > GLIBC_2.2.3 __libpthread_version_placeholder F > GLIBC_2.2.6 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.3.2 __libpthread_version_placeholder F > GLIBC_2.3.3 __libpthread_version_placeholder F > GLIBC_2.3.4 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/ia64/libc.abilist b/sysdeps/unix/sysv/linux/ia64/libc.abilist > index 38fb02e32b..b8089b0b0c 100644 > --- a/sysdeps/unix/sysv/linux/ia64/libc.abilist > +++ b/sysdeps/unix/sysv/linux/ia64/libc.abilist > @@ -1333,6 +1333,7 @@ GLIBC_2.2 pthread_condattr_destroy F > GLIBC_2.2 pthread_condattr_getpshared F > GLIBC_2.2 pthread_condattr_init F > GLIBC_2.2 pthread_condattr_setpshared F > +GLIBC_2.2 pthread_create F > GLIBC_2.2 pthread_detach F > GLIBC_2.2 pthread_equal F > GLIBC_2.2 pthread_exit F > @@ -2034,6 +2035,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2302,6 +2304,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2374,6 +2377,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist > index cc941573b6..f1adf37ff2 100644 > --- a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist > @@ -2,10 +2,9 @@ GLIBC_2.11 __libpthread_version_placeholder F > GLIBC_2.12 __libpthread_version_placeholder F > GLIBC_2.18 __libpthread_version_placeholder F > GLIBC_2.2 __errno_location F > -GLIBC_2.2 pthread_create F > GLIBC_2.2.3 __libpthread_version_placeholder F > GLIBC_2.2.6 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.3.2 __libpthread_version_placeholder F > GLIBC_2.3.3 __libpthread_version_placeholder F > GLIBC_2.3.4 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist > index 8ee9648828..093854ad85 100644 > --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist > +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist > @@ -141,6 +141,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -237,6 +238,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -309,6 +311,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > @@ -1720,6 +1723,7 @@ GLIBC_2.4 pthread_condattr_getpshared F > GLIBC_2.4 pthread_condattr_init F > GLIBC_2.4 pthread_condattr_setclock F > GLIBC_2.4 pthread_condattr_setpshared F > +GLIBC_2.4 pthread_create F > GLIBC_2.4 pthread_detach F > GLIBC_2.4 pthread_equal F > GLIBC_2.4 pthread_exit F > diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist > index 0ad6524820..f8ebb4cae2 100644 > --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist > @@ -1,9 +1,8 @@ > GLIBC_2.11 __libpthread_version_placeholder F > GLIBC_2.12 __libpthread_version_placeholder F > GLIBC_2.18 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.30 __libpthread_version_placeholder F > GLIBC_2.31 __libpthread_version_placeholder F > GLIBC_2.4 __errno_location F > GLIBC_2.4 __libpthread_version_placeholder F > -GLIBC_2.4 pthread_create F > diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist > index 1c51cb41ec..87554f1468 100644 > --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist > +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist > @@ -874,6 +874,7 @@ GLIBC_2.0 pthread_cond_timedwait F > GLIBC_2.0 pthread_cond_wait F > GLIBC_2.0 pthread_condattr_destroy F > GLIBC_2.0 pthread_condattr_init F > +GLIBC_2.0 pthread_create F > GLIBC_2.0 pthread_detach F > GLIBC_2.0 pthread_equal F > GLIBC_2.0 pthread_exit F > @@ -1584,6 +1585,7 @@ GLIBC_2.1 pthread_attr_init F > GLIBC_2.1 pthread_attr_setguardsize F > GLIBC_2.1 pthread_attr_setstackaddr F > GLIBC_2.1 pthread_attr_setstacksize F > +GLIBC_2.1 pthread_create F > GLIBC_2.1 pthread_getconcurrency F > GLIBC_2.1 pthread_mutexattr_gettype F > GLIBC_2.1 pthread_mutexattr_settype F > @@ -2122,6 +2124,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2392,6 +2395,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2464,6 +2468,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist > index c8f065b787..47cbcf3baf 100644 > --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist > @@ -1,6 +1,5 @@ > GLIBC_2.0 __errno_location F > -GLIBC_2.0 pthread_create F > -GLIBC_2.1 pthread_create F > +GLIBC_2.1 __libpthread_version_placeholder F > GLIBC_2.1.1 __libpthread_version_placeholder F > GLIBC_2.1.2 __libpthread_version_placeholder F > GLIBC_2.11 __libpthread_version_placeholder F > @@ -9,7 +8,7 @@ GLIBC_2.18 __libpthread_version_placeholder F > GLIBC_2.2 __libpthread_version_placeholder F > GLIBC_2.2.3 __libpthread_version_placeholder F > GLIBC_2.2.6 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.3.2 __libpthread_version_placeholder F > GLIBC_2.3.3 __libpthread_version_placeholder F > GLIBC_2.3.4 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist > index f8b67cd170..e9340671c5 100644 > --- a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist > +++ b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist > @@ -1490,6 +1490,7 @@ GLIBC_2.18 pthread_condattr_getpshared F > GLIBC_2.18 pthread_condattr_init F > GLIBC_2.18 pthread_condattr_setclock F > GLIBC_2.18 pthread_condattr_setpshared F > +GLIBC_2.18 pthread_create F > GLIBC_2.18 pthread_detach F > GLIBC_2.18 pthread_equal F > GLIBC_2.18 pthread_exit F > @@ -2268,6 +2269,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2364,6 +2366,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2436,6 +2439,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist > index 921e604dbe..c99c8b026c 100644 > --- a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist > @@ -1,5 +1,4 @@ > GLIBC_2.18 __errno_location F > -GLIBC_2.18 pthread_create F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.30 __libpthread_version_placeholder F > GLIBC_2.31 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist > index edac4a1bb4..6ddc0e90cf 100644 > --- a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist > +++ b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist > @@ -1490,6 +1490,7 @@ GLIBC_2.18 pthread_condattr_getpshared F > GLIBC_2.18 pthread_condattr_init F > GLIBC_2.18 pthread_condattr_setclock F > GLIBC_2.18 pthread_condattr_setpshared F > +GLIBC_2.18 pthread_create F > GLIBC_2.18 pthread_detach F > GLIBC_2.18 pthread_equal F > GLIBC_2.18 pthread_exit F > @@ -2268,6 +2269,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2361,6 +2363,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2433,6 +2436,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist > index 921e604dbe..c99c8b026c 100644 > --- a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist > @@ -1,5 +1,4 @@ > GLIBC_2.18 __errno_location F > -GLIBC_2.18 pthread_create F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.30 __libpthread_version_placeholder F > GLIBC_2.31 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist > index db900c89ab..8582c9c371 100644 > --- a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist > +++ b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist > @@ -871,6 +871,7 @@ GLIBC_2.0 pthread_cond_timedwait F > GLIBC_2.0 pthread_cond_wait F > GLIBC_2.0 pthread_condattr_destroy F > GLIBC_2.0 pthread_condattr_init F > +GLIBC_2.0 pthread_create F > GLIBC_2.0 pthread_detach F > GLIBC_2.0 pthread_equal F > GLIBC_2.0 pthread_exit F > @@ -1869,6 +1870,7 @@ GLIBC_2.2 pthread_barrierattr_init F > GLIBC_2.2 pthread_barrierattr_setpshared F > GLIBC_2.2 pthread_condattr_getpshared F > GLIBC_2.2 pthread_condattr_setpshared F > +GLIBC_2.2 pthread_create F > GLIBC_2.2 pthread_getconcurrency F > GLIBC_2.2 pthread_getcpuclockid F > GLIBC_2.2 pthread_mutex_timedlock F > @@ -2092,6 +2094,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2357,6 +2360,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2429,6 +2433,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist > index a5f3d5ce2a..2d0b9e3542 100644 > --- a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist > @@ -1,12 +1,11 @@ > GLIBC_2.0 __errno_location F > -GLIBC_2.0 pthread_create F > GLIBC_2.11 __libpthread_version_placeholder F > GLIBC_2.12 __libpthread_version_placeholder F > GLIBC_2.18 __libpthread_version_placeholder F > -GLIBC_2.2 pthread_create F > +GLIBC_2.2 __libpthread_version_placeholder F > GLIBC_2.2.3 __libpthread_version_placeholder F > GLIBC_2.2.6 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.3.2 __libpthread_version_placeholder F > GLIBC_2.3.3 __libpthread_version_placeholder F > GLIBC_2.3.4 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist > index 4e15f48b6c..b0849bec98 100644 > --- a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist > +++ b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist > @@ -871,6 +871,7 @@ GLIBC_2.0 pthread_cond_timedwait F > GLIBC_2.0 pthread_cond_wait F > GLIBC_2.0 pthread_condattr_destroy F > GLIBC_2.0 pthread_condattr_init F > +GLIBC_2.0 pthread_create F > GLIBC_2.0 pthread_detach F > GLIBC_2.0 pthread_equal F > GLIBC_2.0 pthread_exit F > @@ -1867,6 +1868,7 @@ GLIBC_2.2 pthread_barrierattr_init F > GLIBC_2.2 pthread_barrierattr_setpshared F > GLIBC_2.2 pthread_condattr_getpshared F > GLIBC_2.2 pthread_condattr_setpshared F > +GLIBC_2.2 pthread_create F > GLIBC_2.2 pthread_getconcurrency F > GLIBC_2.2 pthread_getcpuclockid F > GLIBC_2.2 pthread_mutex_timedlock F > @@ -2090,6 +2092,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2355,6 +2358,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2427,6 +2431,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist > index a5f3d5ce2a..2d0b9e3542 100644 > --- a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist > @@ -1,12 +1,11 @@ > GLIBC_2.0 __errno_location F > -GLIBC_2.0 pthread_create F > GLIBC_2.11 __libpthread_version_placeholder F > GLIBC_2.12 __libpthread_version_placeholder F > GLIBC_2.18 __libpthread_version_placeholder F > -GLIBC_2.2 pthread_create F > +GLIBC_2.2 __libpthread_version_placeholder F > GLIBC_2.2.3 __libpthread_version_placeholder F > GLIBC_2.2.6 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.3.2 __libpthread_version_placeholder F > GLIBC_2.3.3 __libpthread_version_placeholder F > GLIBC_2.3.4 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist > index 616a6076f1..386660a5a1 100644 > --- a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist > +++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist > @@ -871,6 +871,7 @@ GLIBC_2.0 pthread_cond_timedwait F > GLIBC_2.0 pthread_cond_wait F > GLIBC_2.0 pthread_condattr_destroy F > GLIBC_2.0 pthread_condattr_init F > +GLIBC_2.0 pthread_create F > GLIBC_2.0 pthread_detach F > GLIBC_2.0 pthread_equal F > GLIBC_2.0 pthread_exit F > @@ -1867,6 +1868,7 @@ GLIBC_2.2 pthread_barrierattr_init F > GLIBC_2.2 pthread_barrierattr_setpshared F > GLIBC_2.2 pthread_condattr_getpshared F > GLIBC_2.2 pthread_condattr_setpshared F > +GLIBC_2.2 pthread_create F > GLIBC_2.2 pthread_getconcurrency F > GLIBC_2.2 pthread_getcpuclockid F > GLIBC_2.2 pthread_mutex_timedlock F > @@ -2098,6 +2100,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2363,6 +2366,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2435,6 +2439,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist > index 59a353d306..4d05128f21 100644 > --- a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist > +++ b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist > @@ -869,6 +869,7 @@ GLIBC_2.0 pthread_cond_timedwait F > GLIBC_2.0 pthread_cond_wait F > GLIBC_2.0 pthread_condattr_destroy F > GLIBC_2.0 pthread_condattr_init F > +GLIBC_2.0 pthread_create F > GLIBC_2.0 pthread_detach F > GLIBC_2.0 pthread_equal F > GLIBC_2.0 pthread_exit F > @@ -1863,6 +1864,7 @@ GLIBC_2.2 pthread_barrierattr_init F > GLIBC_2.2 pthread_barrierattr_setpshared F > GLIBC_2.2 pthread_condattr_getpshared F > GLIBC_2.2 pthread_condattr_setpshared F > +GLIBC_2.2 pthread_create F > GLIBC_2.2 pthread_getconcurrency F > GLIBC_2.2 pthread_getcpuclockid F > GLIBC_2.2 pthread_mutex_timedlock F > @@ -2093,6 +2095,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2357,6 +2360,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2429,6 +2433,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/nios2/libc.abilist b/sysdeps/unix/sysv/linux/nios2/libc.abilist > index 0fc42897aa..bd305f440f 100644 > --- a/sysdeps/unix/sysv/linux/nios2/libc.abilist > +++ b/sysdeps/unix/sysv/linux/nios2/libc.abilist > @@ -1533,6 +1533,7 @@ GLIBC_2.21 pthread_condattr_getpshared F > GLIBC_2.21 pthread_condattr_init F > GLIBC_2.21 pthread_condattr_setclock F > GLIBC_2.21 pthread_condattr_setpshared F > +GLIBC_2.21 pthread_create F > GLIBC_2.21 pthread_detach F > GLIBC_2.21 pthread_equal F > GLIBC_2.21 pthread_exit F > @@ -2310,6 +2311,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2403,6 +2405,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2475,6 +2478,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist > index f36733746e..4d8ff6a262 100644 > --- a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist > @@ -1,5 +1,4 @@ > GLIBC_2.21 __errno_location F > -GLIBC_2.21 pthread_create F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.30 __libpthread_version_placeholder F > GLIBC_2.31 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist > index 553ecdabc9..c2665624aa 100644 > --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist > +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist > @@ -882,6 +882,7 @@ GLIBC_2.0 pthread_cond_timedwait F > GLIBC_2.0 pthread_cond_wait F > GLIBC_2.0 pthread_condattr_destroy F > GLIBC_2.0 pthread_condattr_init F > +GLIBC_2.0 pthread_create F > GLIBC_2.0 pthread_detach F > GLIBC_2.0 pthread_equal F > GLIBC_2.0 pthread_exit F > @@ -1592,6 +1593,7 @@ GLIBC_2.1 pthread_attr_init F > GLIBC_2.1 pthread_attr_setguardsize F > GLIBC_2.1 pthread_attr_setstackaddr F > GLIBC_2.1 pthread_attr_setstacksize F > +GLIBC_2.1 pthread_create F > GLIBC_2.1 pthread_getconcurrency F > GLIBC_2.1 pthread_mutexattr_gettype F > GLIBC_2.1 pthread_mutexattr_settype F > @@ -2126,6 +2128,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2419,6 +2422,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2491,6 +2495,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist > index 84a1592904..e545bcc56c 100644 > --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist > @@ -1,6 +1,5 @@ > GLIBC_2.0 __errno_location F > -GLIBC_2.0 pthread_create F > -GLIBC_2.1 pthread_create F > +GLIBC_2.1 __libpthread_version_placeholder F > GLIBC_2.1.1 __libpthread_version_placeholder F > GLIBC_2.1.2 __libpthread_version_placeholder F > GLIBC_2.11 __libpthread_version_placeholder F > @@ -9,7 +8,7 @@ GLIBC_2.18 __libpthread_version_placeholder F > GLIBC_2.2 __libpthread_version_placeholder F > GLIBC_2.2.3 __libpthread_version_placeholder F > GLIBC_2.2.6 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.3.2 __libpthread_version_placeholder F > GLIBC_2.3.3 __libpthread_version_placeholder F > GLIBC_2.3.4 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist > index 7ec438f7b4..13ef6ef39e 100644 > --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist > +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist > @@ -882,6 +882,7 @@ GLIBC_2.0 pthread_cond_timedwait F > GLIBC_2.0 pthread_cond_wait F > GLIBC_2.0 pthread_condattr_destroy F > GLIBC_2.0 pthread_condattr_init F > +GLIBC_2.0 pthread_create F > GLIBC_2.0 pthread_detach F > GLIBC_2.0 pthread_equal F > GLIBC_2.0 pthread_exit F > @@ -1592,6 +1593,7 @@ GLIBC_2.1 pthread_attr_init F > GLIBC_2.1 pthread_attr_setguardsize F > GLIBC_2.1 pthread_attr_setstackaddr F > GLIBC_2.1 pthread_attr_setstacksize F > +GLIBC_2.1 pthread_create F > GLIBC_2.1 pthread_getconcurrency F > GLIBC_2.1 pthread_mutexattr_gettype F > GLIBC_2.1 pthread_mutexattr_settype F > @@ -2130,6 +2132,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2452,6 +2455,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2524,6 +2528,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist > index f382e3e296..b21072e313 100644 > --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist > +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist > @@ -140,6 +140,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -1437,6 +1438,7 @@ GLIBC_2.3 pthread_condattr_destroy F > GLIBC_2.3 pthread_condattr_getpshared F > GLIBC_2.3 pthread_condattr_init F > GLIBC_2.3 pthread_condattr_setpshared F > +GLIBC_2.3 pthread_create F > GLIBC_2.3 pthread_detach F > GLIBC_2.3 pthread_equal F > GLIBC_2.3 pthread_exit F > @@ -2267,6 +2269,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2339,6 +2342,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist > index b66279a352..e10c836946 100644 > --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist > @@ -1,9 +1,8 @@ > GLIBC_2.11 __libpthread_version_placeholder F > GLIBC_2.12 __libpthread_version_placeholder F > GLIBC_2.18 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.3 __errno_location F > -GLIBC_2.3 pthread_create F > GLIBC_2.3.2 __libpthread_version_placeholder F > GLIBC_2.3.3 __libpthread_version_placeholder F > GLIBC_2.3.4 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist > index 97ff951418..62af65536c 100644 > --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist > +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist > @@ -1576,6 +1576,7 @@ GLIBC_2.17 pthread_condattr_getpshared F > GLIBC_2.17 pthread_condattr_init F > GLIBC_2.17 pthread_condattr_setclock F > GLIBC_2.17 pthread_condattr_setpshared F > +GLIBC_2.17 pthread_create F > GLIBC_2.17 pthread_detach F > GLIBC_2.17 pthread_equal F > GLIBC_2.17 pthread_exit F > @@ -2367,6 +2368,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2566,6 +2568,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2638,6 +2641,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist > index 3c03fcc17b..14ada15a35 100644 > --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist > @@ -1,6 +1,5 @@ > GLIBC_2.17 __errno_location F > -GLIBC_2.17 pthread_create F > GLIBC_2.18 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.30 __libpthread_version_placeholder F > GLIBC_2.31 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist > index 5bde5bb508..a63aec3379 100644 > --- a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist > +++ b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist > @@ -1431,6 +1431,7 @@ GLIBC_2.33 pthread_condattr_getpshared F > GLIBC_2.33 pthread_condattr_init F > GLIBC_2.33 pthread_condattr_setclock F > GLIBC_2.33 pthread_condattr_setpshared F > +GLIBC_2.33 pthread_create F > GLIBC_2.33 pthread_detach F > GLIBC_2.33 pthread_equal F > GLIBC_2.33 pthread_exit F > @@ -1899,6 +1900,7 @@ GLIBC_2.33 tempnam F > GLIBC_2.33 textdomain F > GLIBC_2.33 tfind F > GLIBC_2.33 tgkill F > +GLIBC_2.33 thrd_create F > GLIBC_2.33 thrd_current F > GLIBC_2.33 thrd_detach F > GLIBC_2.33 thrd_equal F > @@ -2131,6 +2133,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2203,6 +2206,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist > index e9cded0b3c..73188776b6 100644 > --- a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist > @@ -1,3 +1 @@ > GLIBC_2.33 __errno_location F > -GLIBC_2.33 pthread_create F > -GLIBC_2.33 thrd_create F > diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist > index 42f6d52e13..b52efaf5ee 100644 > --- a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist > +++ b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist > @@ -1478,6 +1478,7 @@ GLIBC_2.27 pthread_condattr_getpshared F > GLIBC_2.27 pthread_condattr_init F > GLIBC_2.27 pthread_condattr_setclock F > GLIBC_2.27 pthread_condattr_setpshared F > +GLIBC_2.27 pthread_create F > GLIBC_2.27 pthread_detach F > GLIBC_2.27 pthread_equal F > GLIBC_2.27 pthread_exit F > @@ -2238,6 +2239,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2331,6 +2333,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2403,6 +2406,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist > index 07a3c7f01d..35a6a20935 100644 > --- a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist > @@ -1,5 +1,4 @@ > GLIBC_2.27 __errno_location F > -GLIBC_2.27 pthread_create F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.30 __libpthread_version_placeholder F > GLIBC_2.31 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist > index 2274342208..b699dedcc1 100644 > --- a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist > +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist > @@ -873,6 +873,7 @@ GLIBC_2.0 pthread_cond_timedwait F > GLIBC_2.0 pthread_cond_wait F > GLIBC_2.0 pthread_condattr_destroy F > GLIBC_2.0 pthread_condattr_init F > +GLIBC_2.0 pthread_create F > GLIBC_2.0 pthread_detach F > GLIBC_2.0 pthread_equal F > GLIBC_2.0 pthread_exit F > @@ -1584,6 +1585,7 @@ GLIBC_2.1 pthread_attr_init F > GLIBC_2.1 pthread_attr_setguardsize F > GLIBC_2.1 pthread_attr_setstackaddr F > GLIBC_2.1 pthread_attr_setstacksize F > +GLIBC_2.1 pthread_create F > GLIBC_2.1 pthread_getconcurrency F > GLIBC_2.1 pthread_mutexattr_gettype F > GLIBC_2.1 pthread_mutexattr_settype F > @@ -2135,6 +2137,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2417,6 +2420,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2489,6 +2493,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist > index faae6bcf76..ac212e942a 100644 > --- a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist > @@ -1,6 +1,5 @@ > GLIBC_2.0 __errno_location F > -GLIBC_2.0 pthread_create F > -GLIBC_2.1 pthread_create F > +GLIBC_2.1 __libpthread_version_placeholder F > GLIBC_2.1.1 __libpthread_version_placeholder F > GLIBC_2.1.2 __libpthread_version_placeholder F > GLIBC_2.11 __libpthread_version_placeholder F > @@ -10,7 +9,7 @@ GLIBC_2.19 __libpthread_version_placeholder F > GLIBC_2.2 __libpthread_version_placeholder F > GLIBC_2.2.3 __libpthread_version_placeholder F > GLIBC_2.2.6 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.3.2 __libpthread_version_placeholder F > GLIBC_2.3.3 __libpthread_version_placeholder F > GLIBC_2.3.4 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist > index 14d1c5e7f8..94209858b1 100644 > --- a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist > +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist > @@ -1330,6 +1330,7 @@ GLIBC_2.2 pthread_condattr_destroy F > GLIBC_2.2 pthread_condattr_getpshared F > GLIBC_2.2 pthread_condattr_init F > GLIBC_2.2 pthread_condattr_setpshared F > +GLIBC_2.2 pthread_create F > GLIBC_2.2 pthread_detach F > GLIBC_2.2 pthread_equal F > GLIBC_2.2 pthread_exit F > @@ -2026,6 +2027,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2304,6 +2306,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2376,6 +2379,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist > index ac3a2834dc..e0feab34d5 100644 > --- a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist > @@ -3,10 +3,9 @@ GLIBC_2.12 __libpthread_version_placeholder F > GLIBC_2.18 __libpthread_version_placeholder F > GLIBC_2.19 __libpthread_version_placeholder F > GLIBC_2.2 __errno_location F > -GLIBC_2.2 pthread_create F > GLIBC_2.2.3 __libpthread_version_placeholder F > GLIBC_2.2.6 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.3.2 __libpthread_version_placeholder F > GLIBC_2.3.3 __libpthread_version_placeholder F > GLIBC_2.3.4 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/sh/be/libc.abilist b/sysdeps/unix/sysv/linux/sh/be/libc.abilist > index 97942ff01a..0fab90e1e3 100644 > --- a/sysdeps/unix/sysv/linux/sh/be/libc.abilist > +++ b/sysdeps/unix/sysv/linux/sh/be/libc.abilist > @@ -1316,6 +1316,7 @@ GLIBC_2.2 pthread_condattr_destroy F > GLIBC_2.2 pthread_condattr_getpshared F > GLIBC_2.2 pthread_condattr_init F > GLIBC_2.2 pthread_condattr_setpshared F > +GLIBC_2.2 pthread_create F > GLIBC_2.2 pthread_detach F > GLIBC_2.2 pthread_equal F > GLIBC_2.2 pthread_exit F > @@ -2003,6 +2004,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2273,6 +2275,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2345,6 +2348,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist > index cc941573b6..f1adf37ff2 100644 > --- a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist > @@ -2,10 +2,9 @@ GLIBC_2.11 __libpthread_version_placeholder F > GLIBC_2.12 __libpthread_version_placeholder F > GLIBC_2.18 __libpthread_version_placeholder F > GLIBC_2.2 __errno_location F > -GLIBC_2.2 pthread_create F > GLIBC_2.2.3 __libpthread_version_placeholder F > GLIBC_2.2.6 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.3.2 __libpthread_version_placeholder F > GLIBC_2.3.3 __libpthread_version_placeholder F > GLIBC_2.3.4 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/sh/le/libc.abilist b/sysdeps/unix/sysv/linux/sh/le/libc.abilist > index 617b673620..2f3a64b580 100644 > --- a/sysdeps/unix/sysv/linux/sh/le/libc.abilist > +++ b/sysdeps/unix/sysv/linux/sh/le/libc.abilist > @@ -1316,6 +1316,7 @@ GLIBC_2.2 pthread_condattr_destroy F > GLIBC_2.2 pthread_condattr_getpshared F > GLIBC_2.2 pthread_condattr_init F > GLIBC_2.2 pthread_condattr_setpshared F > +GLIBC_2.2 pthread_create F > GLIBC_2.2 pthread_detach F > GLIBC_2.2 pthread_equal F > GLIBC_2.2 pthread_exit F > @@ -2003,6 +2004,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2270,6 +2272,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2342,6 +2345,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist > index cc941573b6..f1adf37ff2 100644 > --- a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist > @@ -2,10 +2,9 @@ GLIBC_2.11 __libpthread_version_placeholder F > GLIBC_2.12 __libpthread_version_placeholder F > GLIBC_2.18 __libpthread_version_placeholder F > GLIBC_2.2 __errno_location F > -GLIBC_2.2 pthread_create F > GLIBC_2.2.3 __libpthread_version_placeholder F > GLIBC_2.2.6 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.3.2 __libpthread_version_placeholder F > GLIBC_2.3.3 __libpthread_version_placeholder F > GLIBC_2.3.4 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist > index 3c6559bb4f..e6fe453f50 100644 > --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist > +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist > @@ -876,6 +876,7 @@ GLIBC_2.0 pthread_cond_timedwait F > GLIBC_2.0 pthread_cond_wait F > GLIBC_2.0 pthread_condattr_destroy F > GLIBC_2.0 pthread_condattr_init F > +GLIBC_2.0 pthread_create F > GLIBC_2.0 pthread_detach F > GLIBC_2.0 pthread_equal F > GLIBC_2.0 pthread_exit F > @@ -1585,6 +1586,7 @@ GLIBC_2.1 pthread_attr_init F > GLIBC_2.1 pthread_attr_setguardsize F > GLIBC_2.1 pthread_attr_setstackaddr F > GLIBC_2.1 pthread_attr_setstacksize F > +GLIBC_2.1 pthread_create F > GLIBC_2.1 pthread_getconcurrency F > GLIBC_2.1 pthread_mutexattr_gettype F > GLIBC_2.1 pthread_mutexattr_settype F > @@ -2129,6 +2131,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2410,6 +2413,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2482,6 +2486,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist > index c8f065b787..47cbcf3baf 100644 > --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist > @@ -1,6 +1,5 @@ > GLIBC_2.0 __errno_location F > -GLIBC_2.0 pthread_create F > -GLIBC_2.1 pthread_create F > +GLIBC_2.1 __libpthread_version_placeholder F > GLIBC_2.1.1 __libpthread_version_placeholder F > GLIBC_2.1.2 __libpthread_version_placeholder F > GLIBC_2.11 __libpthread_version_placeholder F > @@ -9,7 +8,7 @@ GLIBC_2.18 __libpthread_version_placeholder F > GLIBC_2.2 __libpthread_version_placeholder F > GLIBC_2.2.3 __libpthread_version_placeholder F > GLIBC_2.2.6 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.3.2 __libpthread_version_placeholder F > GLIBC_2.3.3 __libpthread_version_placeholder F > GLIBC_2.3.4 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist > index 77f54bb23b..4327cf5eb3 100644 > --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist > +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist > @@ -1359,6 +1359,7 @@ GLIBC_2.2 pthread_condattr_destroy F > GLIBC_2.2 pthread_condattr_getpshared F > GLIBC_2.2 pthread_condattr_init F > GLIBC_2.2 pthread_condattr_setpshared F > +GLIBC_2.2 pthread_create F > GLIBC_2.2 pthread_detach F > GLIBC_2.2 pthread_equal F > GLIBC_2.2 pthread_exit F > @@ -2056,6 +2057,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2323,6 +2325,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2395,6 +2398,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist > index cc941573b6..f1adf37ff2 100644 > --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist > @@ -2,10 +2,9 @@ GLIBC_2.11 __libpthread_version_placeholder F > GLIBC_2.12 __libpthread_version_placeholder F > GLIBC_2.18 __libpthread_version_placeholder F > GLIBC_2.2 __errno_location F > -GLIBC_2.2 pthread_create F > GLIBC_2.2.3 __libpthread_version_placeholder F > GLIBC_2.2.6 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.3.2 __libpthread_version_placeholder F > GLIBC_2.3.3 __libpthread_version_placeholder F > GLIBC_2.3.4 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist > index 4035841a1e..318a6d50f9 100644 > --- a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist > +++ b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist > @@ -1326,6 +1326,7 @@ GLIBC_2.2.5 pthread_condattr_destroy F > GLIBC_2.2.5 pthread_condattr_getpshared F > GLIBC_2.2.5 pthread_condattr_init F > GLIBC_2.2.5 pthread_condattr_setpshared F > +GLIBC_2.2.5 pthread_create F > GLIBC_2.2.5 pthread_detach F > GLIBC_2.2.5 pthread_equal F > GLIBC_2.2.5 pthread_exit F > @@ -2015,6 +2016,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2282,6 +2284,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2354,6 +2357,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist > index d3abfb7d11..ec4e3c0ecd 100644 > --- a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist > @@ -2,9 +2,8 @@ GLIBC_2.11 __libpthread_version_placeholder F > GLIBC_2.12 __libpthread_version_placeholder F > GLIBC_2.18 __libpthread_version_placeholder F > GLIBC_2.2.5 __errno_location F > -GLIBC_2.2.5 pthread_create F > GLIBC_2.2.6 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.3.2 __libpthread_version_placeholder F > GLIBC_2.3.3 __libpthread_version_placeholder F > GLIBC_2.3.4 __libpthread_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist > index 61ac187db9..0bcf898d4d 100644 > --- a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist > +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist > @@ -1495,6 +1495,7 @@ GLIBC_2.16 pthread_condattr_getpshared F > GLIBC_2.16 pthread_condattr_init F > GLIBC_2.16 pthread_condattr_setclock F > GLIBC_2.16 pthread_condattr_setpshared F > +GLIBC_2.16 pthread_create F > GLIBC_2.16 pthread_detach F > GLIBC_2.16 pthread_equal F > GLIBC_2.16 pthread_exit F > @@ -2290,6 +2291,7 @@ GLIBC_2.28 mtx_trylock F > GLIBC_2.28 mtx_unlock F > GLIBC_2.28 renameat2 F > GLIBC_2.28 statx F > +GLIBC_2.28 thrd_create F > GLIBC_2.28 thrd_current F > GLIBC_2.28 thrd_detach F > GLIBC_2.28 thrd_equal F > @@ -2385,6 +2387,7 @@ GLIBC_2.34 pthread_condattr_getclock F > GLIBC_2.34 pthread_condattr_getpshared F > GLIBC_2.34 pthread_condattr_setclock F > GLIBC_2.34 pthread_condattr_setpshared F > +GLIBC_2.34 pthread_create F > GLIBC_2.34 pthread_detach F > GLIBC_2.34 pthread_getattr_default_np F > GLIBC_2.34 pthread_getconcurrency F > @@ -2457,6 +2460,7 @@ GLIBC_2.34 sem_timedwait F > GLIBC_2.34 sem_trywait F > GLIBC_2.34 sem_unlink F > GLIBC_2.34 sem_wait F > +GLIBC_2.34 thrd_create F > GLIBC_2.34 thrd_detach F > GLIBC_2.34 thrd_exit F > GLIBC_2.34 thrd_join F > diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist > index af42dea518..cc6e073a11 100644 > --- a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist > +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist > @@ -1,6 +1,5 @@ > GLIBC_2.16 __errno_location F > -GLIBC_2.16 pthread_create F > GLIBC_2.18 __libpthread_version_placeholder F > -GLIBC_2.28 thrd_create F > +GLIBC_2.28 __libpthread_version_placeholder F > GLIBC_2.30 __libpthread_version_placeholder F > GLIBC_2.31 __libpthread_version_placeholder F > Ok.