From patchwork Tue Nov 18 12:50:42 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: gfleury X-Patchwork-Id: 124619 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 583393857348 for ; Tue, 18 Nov 2025 12:53:01 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 583393857348 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, secure) header.d=disroot.org header.i=@disroot.org header.a=rsa-sha256 header.s=mail header.b=kb2G1UyE X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from layka.disroot.org (layka.disroot.org [178.21.23.139]) by sourceware.org (Postfix) with ESMTPS id AD2653858D37 for ; Tue, 18 Nov 2025 12:51:01 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org AD2653858D37 Authentication-Results: sourceware.org; dmarc=pass (p=reject dis=none) header.from=disroot.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=disroot.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org AD2653858D37 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=178.21.23.139 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1763470262; cv=none; b=JUYvsSoFf2VDuKSgwc5Kv1fAopRb6q8T+miPzugWMWEwzTk2JmQgaGbwWvJWrmZGW4B2zKiXcWFUH4b0ByJEcfEeUv7HyW35jOphLNK5ppv7RmU2YF2BV+o53j6085XQitAwrkVq7wOARhFav8iYgGrPdQauT2X5DA4ZQqOxYFk= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1763470262; c=relaxed/simple; bh=WLbvjE5USx3CTzMErrgJi8/Vq9bV1ev7JECDcVEiqDA=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=xT3iu4dClwewesB6kXjeTLM8Gxo4iVAiE777GUBMGdkhC4kd1XRdmQitR+CNX0iZ5iTMDpzhctLeRMNTEaq0g2MaSceR1UA8+aFHfvILPBUZnV5mF/Ug82kYd8WxzkfhUZs9H1jyJK+4oEOmRTRPbOumENo/BhoNqQ7ec6iqpN0= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org AD2653858D37 Received: from mail01.disroot.lan (localhost [127.0.0.1]) by disroot.org (Postfix) with ESMTP id 638C625EF5; Tue, 18 Nov 2025 13:51:00 +0100 (CET) X-Virus-Scanned: SPAM Filter at disroot.org Received: from layka.disroot.org ([127.0.0.1]) by localhost (disroot.org [127.0.0.1]) (amavis, port 10024) with ESMTP id gcwH3J_BxHiT; Tue, 18 Nov 2025 13:50:59 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=disroot.org; s=mail; t=1763470259; bh=WLbvjE5USx3CTzMErrgJi8/Vq9bV1ev7JECDcVEiqDA=; h=From:To:Cc:Subject:Date; b=kb2G1UyEmSEwzc6bxFtCDpf6h1MgTNOh7yQ1ZgPIXH0MNQ6diuFUUm9HabRMAEspW N8uGJzXxBH7zhHq7l/OFRGkygq/MlQ1QIYPv7pAmEcG/W5LScCyFOqD2prUp/g0t6r BmFAoTP32b1Jk2FXIBy2JuUmb5pRMr91Zo3XzWY+orxNAjOqrl1RrAV2t538w5Tdsp JNFRQgZQH7+DcD4MedyzGYiSUH4GgxOc18IT9y7tRMupilrsoc47M2WlsXl3ddf5pX lzAq+oZ66ctzQr0X6FMVViuGyvvb7eu0xgpW0bbfvHrou8EwOJXfDMXL+el9eETsWZ o1HHk8JyRoIPg== From: gfleury To: libc-alpha@sourceware.org Cc: gfleury Subject: [PATCH 1/3] htl: fix compatibility Date: Tue, 18 Nov 2025 14:50:42 +0200 Message-ID: <20251118125044.1160780-1-gfleury@disroot.org> MIME-Version: 1.0 X-Spam-Status: No, score=-13.6 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_HOSTKARMA_W, RCVD_IN_MSPIKE_H5, RCVD_IN_MSPIKE_WL, RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces~patchwork=sourceware.org@sourceware.org This fix 91fb9914d867320d65a2abe284fb623d91ae5efb which break a system built with an old glibc --- htl/Versions | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/htl/Versions b/htl/Versions index d46490b3..343de800 100644 --- a/htl/Versions +++ b/htl/Versions @@ -317,6 +317,10 @@ libc { } libpthread { + GLIBC_2.2.6 { + __libpthread_version_placeholder; + } + GLIBC_2.12 { pthread_atfork; From patchwork Tue Nov 18 12:50:43 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: gfleury X-Patchwork-Id: 124620 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 41AC13858D32 for ; Tue, 18 Nov 2025 12:55:18 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 41AC13858D32 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, secure) header.d=disroot.org header.i=@disroot.org header.a=rsa-sha256 header.s=mail header.b=JTFVDwIU X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from layka.disroot.org (layka.disroot.org [178.21.23.139]) by sourceware.org (Postfix) with ESMTPS id 6E6E53857739 for ; Tue, 18 Nov 2025 12:51:03 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 6E6E53857739 Authentication-Results: sourceware.org; dmarc=pass (p=reject dis=none) header.from=disroot.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=disroot.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 6E6E53857739 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=178.21.23.139 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1763470263; cv=none; b=H5OCt5MMt4gGK5vHqqiE6lKwwwTeaF6jD7NxPm364Sdps/yg4PgpcdHYjTr2jd7E9M7yWqCCqWsBjuutWc6E7lu6aLAsu2oiSuIKB3cPIAUlC7PU8V4w+jDknMRleSYsJPt25H1usuDfaw6xsVvBUK+57WQNb89cFeCQXmVhePI= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1763470263; c=relaxed/simple; bh=Djq9qsyNU4Ohq48PrVAgyDP/62H10pkbpiKXs8nXWec=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=WpK79InJKYU46yZoGDzIqomSDbwJ9UnlV7TWjnqkkJhj5FhYeNKw5Z4H3kGMpLrE72pD/v34eWSYp6me7AHRIQNNoil0NWFD42Gwl4Locw1fKQF4myavO1L7kr8Q3YUDxRai0GDgj6DrTF6ScUXchikLas3P7xKlS5uCitdm88o= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 6E6E53857739 Received: from mail01.disroot.lan (localhost [127.0.0.1]) by disroot.org (Postfix) with ESMTP id 7837C22E33; Tue, 18 Nov 2025 13:51:02 +0100 (CET) X-Virus-Scanned: SPAM Filter at disroot.org Received: from layka.disroot.org ([127.0.0.1]) by localhost (disroot.org [127.0.0.1]) (amavis, port 10024) with ESMTP id Jw_b92R3WQHg; Tue, 18 Nov 2025 13:51:01 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=disroot.org; s=mail; t=1763470261; bh=Djq9qsyNU4Ohq48PrVAgyDP/62H10pkbpiKXs8nXWec=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=JTFVDwIU43StB8lPlcpHfa7KxLFxNkEUyZxHxFosdra2/XKQtoSA4mtXiidpZWnDk Jn3fw9UQ+xrsDC+orHZsonk5RzL1JgVcYGhj8pEaBE6b6wMv8QVaFlD4wW79+f+3bp TRd3HjRPiQmqXiZC/rgloQ8tWkkY85/uRFNAKjf6lwxQPkhpvY1jMLvcVmIqOOuzmr 5/am7DP8jYoOdz2Jxlmob/qxGTwgBNNj1LcgUI4d7gnwQ/mqmdwdJWg68yGZlA5euv yfJGFDOPc2QjjyGGagyMGD3zD1I3cTdvrukSqWL7lVrgZ2GMjZxG7ydeeg2zoPodk9 VA+2OeyiwVFaQ== From: gfleury To: libc-alpha@sourceware.org Cc: gfleury Subject: [PATCH 2/3] htl: move pthread_getname_np/setname_np into libc. Date: Tue, 18 Nov 2025 14:50:43 +0200 Message-ID: <20251118125044.1160780-2-gfleury@disroot.org> In-Reply-To: <20251118125044.1160780-1-gfleury@disroot.org> References: <20251118125044.1160780-1-gfleury@disroot.org> MIME-Version: 1.0 X-Spam-Status: No, score=-13.6 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_HOSTKARMA_W, RCVD_IN_MSPIKE_H5, RCVD_IN_MSPIKE_WL, RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces~patchwork=sourceware.org@sourceware.org --- htl/Makefile | 4 ++-- htl/Versions | 10 ++++++++-- sysdeps/htl/pthreadP.h | 5 +++++ sysdeps/mach/htl/pt-getname-np.c | 10 +++++++++- sysdeps/mach/htl/pt-setname-np.c | 9 ++++++++- sysdeps/mach/hurd/i386/libc.abilist | 4 ++++ sysdeps/mach/hurd/i386/libpthread.abilist | 2 -- sysdeps/mach/hurd/x86_64/libc.abilist | 4 ++++ sysdeps/mach/hurd/x86_64/libpthread.abilist | 2 -- 9 files changed, 40 insertions(+), 10 deletions(-) diff --git a/htl/Makefile b/htl/Makefile index e59a7fff..65a7b17e 100644 --- a/htl/Makefile +++ b/htl/Makefile @@ -29,8 +29,6 @@ libpthread-routines := \ pt-hurd-cond-wait \ pt-hurd-cond-timedwait \ pt-spin \ - pt-getname-np \ - pt-setname-np \ # libpthread-routine headers := \ @@ -122,6 +120,7 @@ routines := \ pt-getattr \ pt-getconcurrency \ pt-getcpuclockid \ + pt-getname-np \ pt-getschedparam \ pt-getspecific \ pt-init-specific \ @@ -182,6 +181,7 @@ routines := \ pt-sigstate \ pt-sigstate-destroy \ pt-sigstate-init \ + pt-setname-np \ pt-stack-alloc \ pt-startup \ pt-sysdep \ diff --git a/htl/Versions b/htl/Versions index 343de800..ed296369 100644 --- a/htl/Versions +++ b/htl/Versions @@ -157,6 +157,11 @@ libc { sem_clockwait; } + GLIBC_2.40 { + pthread_getname_np; + pthread_setname_np; + } + GLIBC_2.41 { pthread_attr_getguardsize; pthread_attr_getstacksize; @@ -225,10 +230,12 @@ libc { pthread_getattr_np; pthread_getconcurrency; pthread_getcpuclockid; + pthread_getname_np; pthread_join; pthread_kill; pthread_mutex_transfer_np; pthread_setconcurrency; + pthread_setname_np; pthread_setschedprio; pthread_testcancel; pthread_timedjoin_np; @@ -345,7 +352,6 @@ libpthread { } GLIBC_2.40 { - pthread_getname_np; - pthread_setname_np; + __libpthread_version_placeholder; } } diff --git a/sysdeps/htl/pthreadP.h b/sysdeps/htl/pthreadP.h index 5fb64697..6ea1e79a 100644 --- a/sysdeps/htl/pthreadP.h +++ b/sysdeps/htl/pthreadP.h @@ -225,6 +225,11 @@ int __pthread_setconcurrency (int __new_level); libc_hidden_proto (__pthread_setconcurrency) int __pthread_getconcurrency (void); libc_hidden_proto (__pthread_getconcurrency) +int __pthread_getname_np (pthread_t __target_thread, char *__buf, + size_t __buflen); +libc_hidden_proto (__pthread_getname_np) +int __pthread_setname_np (pthread_t __target_thread, const char *__name); +libc_hidden_proto (__pthread_setname_np) #define __pthread_raise_internal(__sig) raise (__sig) diff --git a/sysdeps/mach/htl/pt-getname-np.c b/sysdeps/mach/htl/pt-getname-np.c index 7b836b66..8db4d406 100644 --- a/sysdeps/mach/htl/pt-getname-np.c +++ b/sysdeps/mach/htl/pt-getname-np.c @@ -23,6 +23,9 @@ #include #include +#include +#include +#include int __pthread_getname_np (pthread_t thread, char *buf, size_t len) @@ -64,4 +67,9 @@ __pthread_getname_np (pthread_t thread, char *buf, size_t len) #endif } -weak_alias (__pthread_getname_np, pthread_getname_np) +libc_hidden_def (__pthread_getname_np) +versioned_symbol (libc, __pthread_getname_np, pthread_getname_np, GLIBC_2_43); + +#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_40, GLIBC_2_43) +compat_symbol (libc, __pthread_getname_np, pthread_getname_np, GLIBC_2_40); +#endif diff --git a/sysdeps/mach/htl/pt-setname-np.c b/sysdeps/mach/htl/pt-setname-np.c index 58400c1e..0a2a8df5 100644 --- a/sysdeps/mach/htl/pt-setname-np.c +++ b/sysdeps/mach/htl/pt-setname-np.c @@ -22,6 +22,8 @@ #include #include +#include +#include int __pthread_setname_np (pthread_t thread, const char *name) @@ -49,4 +51,9 @@ __pthread_setname_np (pthread_t thread, const char *name) #endif } -weak_alias (__pthread_setname_np, pthread_setname_np) +libc_hidden_def (__pthread_setname_np) +versioned_symbol (libc, __pthread_setname_np, pthread_setname_np, GLIBC_2_43); + +#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_40, GLIBC_2_43) +compat_symbol (libpthread, __pthread_setname_np, pthread_setname_np, GLIBC_2_40); +#endif diff --git a/sysdeps/mach/hurd/i386/libc.abilist b/sysdeps/mach/hurd/i386/libc.abilist index f7c323c8..a0153574 100644 --- a/sysdeps/mach/hurd/i386/libc.abilist +++ b/sysdeps/mach/hurd/i386/libc.abilist @@ -2598,6 +2598,8 @@ GLIBC_2.4 readlinkat F GLIBC_2.4 renameat F GLIBC_2.4 symlinkat F GLIBC_2.4 unlinkat F +GLIBC_2.40 pthread_getname_np F +GLIBC_2.40 pthread_setname_np F GLIBC_2.41 pthread_attr_getguardsize F GLIBC_2.41 pthread_attr_getstack F GLIBC_2.41 pthread_attr_getstackaddr F @@ -2676,10 +2678,12 @@ GLIBC_2.43 pthread_detach F GLIBC_2.43 pthread_getattr_np F GLIBC_2.43 pthread_getconcurrency F GLIBC_2.43 pthread_getcpuclockid F +GLIBC_2.43 pthread_getname_np F GLIBC_2.43 pthread_join F GLIBC_2.43 pthread_kill F GLIBC_2.43 pthread_mutex_transfer_np F GLIBC_2.43 pthread_setconcurrency F +GLIBC_2.43 pthread_setname_np F GLIBC_2.43 pthread_setschedprio F GLIBC_2.43 pthread_testcancel F GLIBC_2.43 pthread_timedjoin_np F diff --git a/sysdeps/mach/hurd/i386/libpthread.abilist b/sysdeps/mach/hurd/i386/libpthread.abilist index e1844a8f..318aa1a6 100644 --- a/sysdeps/mach/hurd/i386/libpthread.abilist +++ b/sysdeps/mach/hurd/i386/libpthread.abilist @@ -33,5 +33,3 @@ GLIBC_2.32 tss_create F GLIBC_2.32 tss_delete F GLIBC_2.32 tss_get F GLIBC_2.32 tss_set F -GLIBC_2.40 pthread_getname_np F -GLIBC_2.40 pthread_setname_np F diff --git a/sysdeps/mach/hurd/x86_64/libc.abilist b/sysdeps/mach/hurd/x86_64/libc.abilist index b482d2d0..38261ba3 100644 --- a/sysdeps/mach/hurd/x86_64/libc.abilist +++ b/sysdeps/mach/hurd/x86_64/libc.abilist @@ -2276,6 +2276,8 @@ GLIBC_2.39 stdc_trailing_zeros_ui F GLIBC_2.39 stdc_trailing_zeros_ul F GLIBC_2.39 stdc_trailing_zeros_ull F GLIBC_2.39 stdc_trailing_zeros_us F +GLIBC_2.40 pthread_getname_np F +GLIBC_2.40 pthread_setname_np F GLIBC_2.41 pthread_attr_getguardsize F GLIBC_2.41 pthread_attr_getstack F GLIBC_2.41 pthread_attr_getstackaddr F @@ -2354,10 +2356,12 @@ GLIBC_2.43 pthread_detach F GLIBC_2.43 pthread_getattr_np F GLIBC_2.43 pthread_getconcurrency F GLIBC_2.43 pthread_getcpuclockid F +GLIBC_2.43 pthread_getname_np F GLIBC_2.43 pthread_join F GLIBC_2.43 pthread_kill F GLIBC_2.43 pthread_mutex_transfer_np F GLIBC_2.43 pthread_setconcurrency F +GLIBC_2.43 pthread_setname_np F GLIBC_2.43 pthread_setschedprio F GLIBC_2.43 pthread_testcancel F GLIBC_2.43 pthread_timedjoin_np F diff --git a/sysdeps/mach/hurd/x86_64/libpthread.abilist b/sysdeps/mach/hurd/x86_64/libpthread.abilist index d4ae93df..c9ad949d 100644 --- a/sysdeps/mach/hurd/x86_64/libpthread.abilist +++ b/sysdeps/mach/hurd/x86_64/libpthread.abilist @@ -32,5 +32,3 @@ GLIBC_2.38 tss_create F GLIBC_2.38 tss_delete F GLIBC_2.38 tss_get F GLIBC_2.38 tss_set F -GLIBC_2.40 pthread_getname_np F -GLIBC_2.40 pthread_setname_np F From patchwork Tue Nov 18 12:50:44 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: gfleury X-Patchwork-Id: 124618 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 3FBA63857732 for ; Tue, 18 Nov 2025 12:52:33 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 3FBA63857732 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, secure) header.d=disroot.org header.i=@disroot.org header.a=rsa-sha256 header.s=mail header.b=R4U1UCuK X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from layka.disroot.org (layka.disroot.org [178.21.23.139]) by sourceware.org (Postfix) with ESMTPS id 028AE385735A for ; Tue, 18 Nov 2025 12:51:06 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 028AE385735A Authentication-Results: sourceware.org; dmarc=pass (p=reject dis=none) header.from=disroot.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=disroot.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 028AE385735A Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=178.21.23.139 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1763470266; cv=none; b=vUvB0LEfCF4aNBMG8j0oly+m8rUT/RtRG1mpt+Ol4TtjSIcgCWuDxpc9iYLuPEfDaIzJ9J7NuWQE33Mu1HkxcaoIk7KbPiUg83t1dJ6cGNQ5YW7tY4757+eb1u0aeZiSsw/kbMe3dMsXGZc/8IeYLDIgrshZbAYmCZ6m7BwzbZU= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1763470266; c=relaxed/simple; bh=LuUq1p2U8Iu48/fifRD5heuy0TsQ1qlc8G+rh6w6sro=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=KAiEoLpMdIR9TLgzmsLLXIHd5NHOyfOc5I1/3RtkCiVtnpcUz6AoCNyu+deyxH4WlYAgMLC8GpteSNEMwHv020woX6Anl5P1mPhzFtgwI5Hde86aNfctVfFvOFJ5rgcQEqTDuqukaDUQQmkF5Rtbpn4/FTNV2JUj0JRQa7zBAa4= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 028AE385735A Received: from mail01.disroot.lan (localhost [127.0.0.1]) by disroot.org (Postfix) with ESMTP id D974A22DCD; Tue, 18 Nov 2025 13:51:04 +0100 (CET) X-Virus-Scanned: SPAM Filter at disroot.org Received: from layka.disroot.org ([127.0.0.1]) by localhost (disroot.org [127.0.0.1]) (amavis, port 10024) with ESMTP id F7pOj5M0JNYL; Tue, 18 Nov 2025 13:51:03 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=disroot.org; s=mail; t=1763470263; bh=LuUq1p2U8Iu48/fifRD5heuy0TsQ1qlc8G+rh6w6sro=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=R4U1UCuKx3Do//RR74RWOk6gprHH6zwLDlcPm/Xc8CNK+9qXZcpP9D8qp0Lv3j5YW fSKC2zAOY/gIlCwGJ04lr1rZ17oHOjWffFdLhjX8Dp9TvlNxU36ZDCp7CBYagHgyBV lscvNUYyQnF3PKpV4nMLO/Yjxf9VdlEQnN5IwEQQGnADk+cuCM24Rpv2JlRHPlTmqt jVwV3R5UJ9iu5Z8LIg7DJfDYor7bW68zNc6PJ59sk/GPPjCYwLz2+sQ6MxVtCgn5x1 ODbS3E+smKToMqVj9HVuZRUGWz0TdXWVwDzhNAMfj6zlXunlbCUUp/5yCz80bRBb/p 3r17eWFSVMW/Q== From: gfleury To: libc-alpha@sourceware.org Cc: gfleury Subject: [PATCH 3/3] htl: move pthread_hurd_cond_timedwait_np, pthread_hurd_cond_wait_np into libc. Date: Tue, 18 Nov 2025 14:50:44 +0200 Message-ID: <20251118125044.1160780-3-gfleury@disroot.org> In-Reply-To: <20251118125044.1160780-1-gfleury@disroot.org> References: <20251118125044.1160780-1-gfleury@disroot.org> MIME-Version: 1.0 X-Spam-Status: No, score=-13.6 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_HOSTKARMA_W, RCVD_IN_MSPIKE_H5, RCVD_IN_MSPIKE_WL, RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces~patchwork=sourceware.org@sourceware.org --- htl/Makefile | 4 ++-- htl/Versions | 10 +++++++--- sysdeps/mach/hurd/htl/pt-hurd-cond-timedwait.c | 7 ++++++- sysdeps/mach/hurd/htl/pt-hurd-cond-wait.c | 7 ++++++- sysdeps/mach/hurd/i386/libc.abilist | 4 ++++ sysdeps/mach/hurd/i386/libpthread.abilist | 2 -- sysdeps/mach/hurd/x86_64/libc.abilist | 4 ++++ sysdeps/mach/hurd/x86_64/libpthread.abilist | 2 -- 8 files changed, 29 insertions(+), 11 deletions(-) diff --git a/htl/Makefile b/htl/Makefile index 65a7b17e..64eb17ed 100644 --- a/htl/Makefile +++ b/htl/Makefile @@ -26,8 +26,6 @@ LCLHDRS := libpthread-routines := \ pt-spin-inlines \ - pt-hurd-cond-wait \ - pt-hurd-cond-timedwait \ pt-spin \ # libpthread-routine @@ -123,6 +121,8 @@ routines := \ pt-getname-np \ pt-getschedparam \ pt-getspecific \ + pt-hurd-cond-wait \ + pt-hurd-cond-timedwait \ pt-init-specific \ pt-join \ pt-key-create \ diff --git a/htl/Versions b/htl/Versions index ed296369..0eff9fd7 100644 --- a/htl/Versions +++ b/htl/Versions @@ -127,7 +127,10 @@ libc { pthread_cond_init; pthread_cond_signal; pthread_cond_wait; pthread_cond_timedwait; pthread_equal; - pthread_exit; pthread_getschedparam; pthread_setschedparam; + pthread_exit; + pthread_hurd_cond_wait_np; + pthread_hurd_cond_timedwait_np; + pthread_getschedparam; pthread_setschedparam; pthread_mutex_destroy; pthread_mutex_init; pthread_mutex_lock; pthread_mutex_unlock; pthread_self; pthread_setcancelstate; pthread_setcanceltype; @@ -231,6 +234,8 @@ libc { pthread_getconcurrency; pthread_getcpuclockid; pthread_getname_np; + pthread_hurd_cond_wait_np; + pthread_hurd_cond_timedwait_np; pthread_join; pthread_kill; pthread_mutex_transfer_np; @@ -338,8 +343,7 @@ libpthread { _pthread_spin_lock; } GLIBC_2.21 { - pthread_hurd_cond_wait_np; - pthread_hurd_cond_timedwait_np; + __libpthread_version_placeholder; } GLIBC_2.32 { diff --git a/sysdeps/mach/hurd/htl/pt-hurd-cond-timedwait.c b/sysdeps/mach/hurd/htl/pt-hurd-cond-timedwait.c index a6c5597d..4903b8f8 100644 --- a/sysdeps/mach/hurd/htl/pt-hurd-cond-timedwait.c +++ b/sysdeps/mach/hurd/htl/pt-hurd-cond-timedwait.c @@ -22,6 +22,7 @@ #include #include +#include extern int __pthread_hurd_cond_timedwait_internal (pthread_cond_t *cond, pthread_mutex_t *mutex, @@ -36,7 +37,11 @@ __pthread_hurd_cond_timedwait_np (pthread_cond_t *cond, return __pthread_hurd_cond_timedwait_internal (cond, mutex, abstime); } -strong_alias (__pthread_hurd_cond_timedwait_np, pthread_hurd_cond_timedwait_np); +versioned_symbol (libc, __pthread_hurd_cond_timedwait_np, pthread_hurd_cond_timedwait_np, GLIBC_2_43); + +#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_21, GLIBC_2_43) +compat_symbol (libpthread, __pthread_hurd_cond_timedwait_np, pthread_hurd_cond_timedwait_np, GLIBC_2_21); +#endif int __pthread_hurd_cond_timedwait_internal (pthread_cond_t *cond, diff --git a/sysdeps/mach/hurd/htl/pt-hurd-cond-wait.c b/sysdeps/mach/hurd/htl/pt-hurd-cond-wait.c index d6f541a1..fcfa7978 100644 --- a/sysdeps/mach/hurd/htl/pt-hurd-cond-wait.c +++ b/sysdeps/mach/hurd/htl/pt-hurd-cond-wait.c @@ -21,6 +21,7 @@ #include #include +#include /* Implemented in pt-hurd-cond-timedwait.c. */ extern int __pthread_hurd_cond_timedwait_internal (pthread_cond_t *cond, @@ -37,4 +38,8 @@ __pthread_hurd_cond_wait_np (pthread_cond_t *cond, pthread_mutex_t *mutex) return err == EINTR; } -strong_alias (__pthread_hurd_cond_wait_np, pthread_hurd_cond_wait_np); +versioned_symbol (libc, __pthread_hurd_cond_wait_np, pthread_hurd_cond_wait_np, GLIBC_2_43); + +#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_21, GLIBC_2_43) +compat_symbol (libpthread, __pthread_hurd_cond_wait_np, pthread_hurd_cond_wait_np, GLIBC_2_21); +#endif diff --git a/sysdeps/mach/hurd/i386/libc.abilist b/sysdeps/mach/hurd/i386/libc.abilist index a0153574..6099178c 100644 --- a/sysdeps/mach/hurd/i386/libc.abilist +++ b/sysdeps/mach/hurd/i386/libc.abilist @@ -2110,6 +2110,8 @@ GLIBC_2.21 pthread_condattr_init F GLIBC_2.21 pthread_equal F GLIBC_2.21 pthread_exit F GLIBC_2.21 pthread_getschedparam F +GLIBC_2.21 pthread_hurd_cond_timedwait_np F +GLIBC_2.21 pthread_hurd_cond_wait_np F GLIBC_2.21 pthread_mutex_destroy F GLIBC_2.21 pthread_mutex_init F GLIBC_2.21 pthread_mutex_lock F @@ -2679,6 +2681,8 @@ GLIBC_2.43 pthread_getattr_np F GLIBC_2.43 pthread_getconcurrency F GLIBC_2.43 pthread_getcpuclockid F GLIBC_2.43 pthread_getname_np F +GLIBC_2.43 pthread_hurd_cond_timedwait_np F +GLIBC_2.43 pthread_hurd_cond_wait_np F GLIBC_2.43 pthread_join F GLIBC_2.43 pthread_kill F GLIBC_2.43 pthread_mutex_transfer_np F diff --git a/sysdeps/mach/hurd/i386/libpthread.abilist b/sysdeps/mach/hurd/i386/libpthread.abilist index 318aa1a6..24e6bd2c 100644 --- a/sysdeps/mach/hurd/i386/libpthread.abilist +++ b/sysdeps/mach/hurd/i386/libpthread.abilist @@ -10,8 +10,6 @@ GLIBC_2.12 pthread_spin_init F GLIBC_2.12 pthread_spin_lock F GLIBC_2.12 pthread_spin_trylock F GLIBC_2.12 pthread_spin_unlock F -GLIBC_2.21 pthread_hurd_cond_timedwait_np F -GLIBC_2.21 pthread_hurd_cond_wait_np F GLIBC_2.32 call_once F GLIBC_2.32 cnd_broadcast F GLIBC_2.32 cnd_destroy F diff --git a/sysdeps/mach/hurd/x86_64/libc.abilist b/sysdeps/mach/hurd/x86_64/libc.abilist index 38261ba3..1aab058a 100644 --- a/sysdeps/mach/hurd/x86_64/libc.abilist +++ b/sysdeps/mach/hurd/x86_64/libc.abilist @@ -1565,6 +1565,8 @@ GLIBC_2.38 pthread_getconcurrency F GLIBC_2.38 pthread_getcpuclockid F GLIBC_2.38 pthread_getschedparam F GLIBC_2.38 pthread_getspecific F +GLIBC_2.38 pthread_hurd_cond_timedwait_np F +GLIBC_2.38 pthread_hurd_cond_wait_np F GLIBC_2.38 pthread_join F GLIBC_2.38 pthread_key_create F GLIBC_2.38 pthread_key_delete F @@ -2357,6 +2359,8 @@ GLIBC_2.43 pthread_getattr_np F GLIBC_2.43 pthread_getconcurrency F GLIBC_2.43 pthread_getcpuclockid F GLIBC_2.43 pthread_getname_np F +GLIBC_2.43 pthread_hurd_cond_timedwait_np F +GLIBC_2.43 pthread_hurd_cond_wait_np F GLIBC_2.43 pthread_join F GLIBC_2.43 pthread_kill F GLIBC_2.43 pthread_mutex_transfer_np F diff --git a/sysdeps/mach/hurd/x86_64/libpthread.abilist b/sysdeps/mach/hurd/x86_64/libpthread.abilist index c9ad949d..57d79648 100644 --- a/sysdeps/mach/hurd/x86_64/libpthread.abilist +++ b/sysdeps/mach/hurd/x86_64/libpthread.abilist @@ -17,8 +17,6 @@ GLIBC_2.38 mtx_lock F GLIBC_2.38 mtx_timedlock F GLIBC_2.38 mtx_trylock F GLIBC_2.38 mtx_unlock F -GLIBC_2.38 pthread_hurd_cond_timedwait_np F -GLIBC_2.38 pthread_hurd_cond_wait_np F GLIBC_2.38 pthread_spin_destroy F GLIBC_2.38 pthread_spin_init F GLIBC_2.38 pthread_spin_lock F