From patchwork Tue Dec 31 13:49:06 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: gfleury X-Patchwork-Id: 103804 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 7060C3858CD1 for ; Tue, 31 Dec 2024 13:53:57 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 7060C3858CD1 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=BNEcLupi 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 0053D3858C51 for ; Tue, 31 Dec 2024 13:49:38 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 0053D3858C51 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 0053D3858C51 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=1735652979; cv=none; b=CDevM8sULE7YgdZi3IUE6UcGsRvAFKYLMxiG7zk4PXeX8ABPNYCa4p+kMcrg0jnfAIdaVit7ql1aLPr2V6aTBDnqa8Zmpo2PVkYPQn8vzWmwwgQi8Lzky56JVXbfNRWjJnPTGP3PC2aoLU571Hf6nw6KSzp2nSYnvorCWQHOk3g= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1735652979; c=relaxed/simple; bh=diOkLQSfEeV51jwAePffwdTKfim5u3tlrX7e2QWJZhM=; h=DKIM-Signature:From:To:Subject:Date:Message-Id:MIME-Version; b=HTqwVtAY8VgdISMaMB0vWbBCiI/ivbtgDPCKy1ys/aRm0NEyPcmxU2/JYycMo3TQ1JgWJQj2U2+FPruvg9SiSdH2qkJqQO67G5NDfzPD6Gc+t0BbkdNTuhdKvsJIQPMdrC7KAFF2Z3oNvUeS9EXhC1c9aWXfsd2/vq1Gj50nBok= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 0053D3858C51 Received: from mail01.disroot.lan (localhost [127.0.0.1]) by disroot.org (Postfix) with ESMTP id 124DA258FA; Tue, 31 Dec 2024 14:49:37 +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 dMdAkBERmjS6; Tue, 31 Dec 2024 14:49:32 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=disroot.org; s=mail; t=1735652972; bh=diOkLQSfEeV51jwAePffwdTKfim5u3tlrX7e2QWJZhM=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=BNEcLupi0FFkTt1oPI10OIl7Xi6p/EROY9zscnY6YiKAxCJGiB+nRE4/Hzs9LqdmW BJu7UTiOD95ruRFzVBeHj7Ncbm2SM3vOdgW3ljqJP7dpYGp0Vlj6mIKYas5oqMgIEN VL/QYezMDIjz2ShgF2BtDKkNL+haElieIs0aCown7l54h+uckhJnudMNMrPEogBtW0 C6J6BzxJsFe/YU6niazp1tCq95C2mEoE90h58BmpAfLRbBC0D4hFUGeo/uKlSFAzrY g5A33x6Lw2yTJib8Rpe7fxu4GaSYAVXGMPwAIj8bvKE3xAHK6FZPUFJ8OQKhEIW0cf tezcLCOA1iH4g== From: gfleury To: libc-alpha@sourceware.org Cc: gfleury Subject: [PATCH 5/8] htl: move pthread_mutexattr_settype, pthread_mutexattr_gettype into libc. Date: Tue, 31 Dec 2024 15:49:06 +0200 Message-Id: <20241231134909.1166440-6-gfleury@disroot.org> In-Reply-To: <20241231134909.1166440-1-gfleury@disroot.org> References: <20241231134909.1166440-1-gfleury@disroot.org> MIME-Version: 1.0 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, 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 | 6 ++++-- sysdeps/htl/pthreadP.h | 9 +++++++++ sysdeps/mach/hurd/htl/pt-mutexattr-gettype.c | 11 +++++++++-- sysdeps/mach/hurd/htl/pt-mutexattr-settype.c | 1 + sysdeps/mach/hurd/i386/libc.abilist | 3 +++ sysdeps/mach/hurd/i386/libpthread.abilist | 2 -- sysdeps/mach/hurd/x86_64/libc.abilist | 3 +++ sysdeps/mach/hurd/x86_64/libpthread.abilist | 2 -- 9 files changed, 31 insertions(+), 10 deletions(-) diff --git a/htl/Makefile b/htl/Makefile index 9c3c0e74..f78b1ff6 100644 --- a/htl/Makefile +++ b/htl/Makefile @@ -56,10 +56,8 @@ libpthread-routines := \ pt-cancel \ pt-mutexattr-getprioceiling \ pt-mutexattr-getpshared \ - pt-mutexattr-gettype \ pt-mutexattr-setprioceiling \ pt-mutexattr-setpshared \ - pt-mutexattr-settype \ pt-mutexattr-getrobust \ pt-mutexattr-setrobust \ pt-mutex-init \ @@ -199,8 +197,10 @@ routines := \ pt-mutex-checklocked \ pt-mutexattr-destroy \ pt-mutexattr-getprotocol \ + pt-mutexattr-gettype \ pt-mutexattr-init \ pt-mutexattr-setprotocol \ + pt-mutexattr-settype \ pt-nthreads \ pt-pthread_self \ pt-self pt-equal \ diff --git a/htl/Versions b/htl/Versions index f827f63c..0b7f0c3f 100644 --- a/htl/Versions +++ b/htl/Versions @@ -40,8 +40,10 @@ libc { pthread_condattr_setpshared; pthread_mutexattr_destroy; pthread_mutexattr_getprotocol; + pthread_mutexattr_gettype; pthread_mutexattr_init; pthread_mutexattr_setprotocol; + pthread_mutexattr_settype; pthread_sigmask; } @@ -120,6 +122,7 @@ libc { __pthread_mutex_checklocked; __pthread_mutexattr_destroy; __pthread_mutexattr_init; + __pthread_mutexattr_settype; __pthread_sigstate; __pthread_sigstate_destroy; __pthread_sigmask; @@ -182,9 +185,8 @@ libpthread { pthread_mutexattr_getprioceiling; pthread_mutexattr_getpshared; - pthread_mutexattr_gettype; pthread_mutexattr_setprioceiling; - pthread_mutexattr_setpshared; pthread_mutexattr_settype; + pthread_mutexattr_setpshared; pthread_once; diff --git a/sysdeps/htl/pthreadP.h b/sysdeps/htl/pthreadP.h index 87ee770b..45b56327 100644 --- a/sysdeps/htl/pthreadP.h +++ b/sysdeps/htl/pthreadP.h @@ -49,6 +49,15 @@ extern int __pthread_mutexattr_setprotocol(pthread_mutexattr_t *__attr, libc_hidden_proto (__pthread_mutexattr_setprotocol) #endif +#if defined __USE_UNIX98 || defined __USE_XOPEN2K8 +extern int __pthread_mutexattr_gettype(const pthread_mutexattr_t *__restrict __attr, + int *__restrict __type); +libc_hidden_proto (__pthread_mutexattr_gettype) +extern int __pthread_mutexattr_settype(pthread_mutexattr_t *__attr, + int __type); +libc_hidden_proto (__pthread_mutexattr_settype) +#endif + extern int __pthread_cond_init (pthread_cond_t *cond, const pthread_condattr_t *cond_attr); libc_hidden_proto (__pthread_cond_init) diff --git a/sysdeps/mach/hurd/htl/pt-mutexattr-gettype.c b/sysdeps/mach/hurd/htl/pt-mutexattr-gettype.c index a2e80c06..e9c6cbe4 100644 --- a/sysdeps/mach/hurd/htl/pt-mutexattr-gettype.c +++ b/sysdeps/mach/hurd/htl/pt-mutexattr-gettype.c @@ -16,16 +16,23 @@ License along with the GNU C Library; if not, see . */ -#include +#include #include #include #include #include "pt-mutex.h" #include +#include int -pthread_mutexattr_gettype (const pthread_mutexattr_t *attrp, int *outp) +__pthread_mutexattr_gettype (const pthread_mutexattr_t *attrp, int *outp) { *outp = attrp->__mutex_type; return 0; } +libc_hidden_def (__pthread_mutexattr_gettype) +versioned_symbol (libc, __pthread_mutexattr_gettype, pthread_mutexattr_gettype, GLIBC_2_41); + +#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_12, GLIBC_2_41) +compat_symbol (libpthread, __pthread_mutexattr_gettype,pthread_mutexattr_gettype, GLIBC_2_12); +#endif diff --git a/sysdeps/mach/hurd/htl/pt-mutexattr-settype.c b/sysdeps/mach/hurd/htl/pt-mutexattr-settype.c index c643227a..447507c0 100644 --- a/sysdeps/mach/hurd/htl/pt-mutexattr-settype.c +++ b/sysdeps/mach/hurd/htl/pt-mutexattr-settype.c @@ -32,4 +32,5 @@ __pthread_mutexattr_settype (pthread_mutexattr_t *attrp, int type) attrp->__mutex_type = type; return 0; } +libc_hidden_def (__pthread_mutexattr_settype) weak_alias (__pthread_mutexattr_settype, pthread_mutexattr_settype) diff --git a/sysdeps/mach/hurd/i386/libc.abilist b/sysdeps/mach/hurd/i386/libc.abilist index 7f7c2279..5ede5a29 100644 --- a/sysdeps/mach/hurd/i386/libc.abilist +++ b/sysdeps/mach/hurd/i386/libc.abilist @@ -65,8 +65,10 @@ GLIBC_2.12 pthread_equal F GLIBC_2.12 pthread_getschedparam F GLIBC_2.12 pthread_mutexattr_destroy F GLIBC_2.12 pthread_mutexattr_getprotocol F +GLIBC_2.12 pthread_mutexattr_gettype F GLIBC_2.12 pthread_mutexattr_init F GLIBC_2.12 pthread_mutexattr_setprotocol F +GLIBC_2.12 pthread_mutexattr_settype F GLIBC_2.12 pthread_self F GLIBC_2.12 pthread_setschedparam F GLIBC_2.12 pthread_sigmask F @@ -2526,6 +2528,7 @@ GLIBC_2.41 pthread_condattr_getpshared F GLIBC_2.41 pthread_condattr_setclock F GLIBC_2.41 pthread_condattr_setpshared F GLIBC_2.41 pthread_mutexattr_getprotocol F +GLIBC_2.41 pthread_mutexattr_gettype F GLIBC_2.41 pthread_mutexattr_setprotocol F GLIBC_2.41 pthread_sigmask F GLIBC_2.5 __readlinkat_chk F diff --git a/sysdeps/mach/hurd/i386/libpthread.abilist b/sysdeps/mach/hurd/i386/libpthread.abilist index 182909a9..0ba4f8e9 100644 --- a/sysdeps/mach/hurd/i386/libpthread.abilist +++ b/sysdeps/mach/hurd/i386/libpthread.abilist @@ -52,10 +52,8 @@ GLIBC_2.12 pthread_mutex_trylock F GLIBC_2.12 pthread_mutex_unlock F GLIBC_2.12 pthread_mutexattr_getprioceiling F GLIBC_2.12 pthread_mutexattr_getpshared F -GLIBC_2.12 pthread_mutexattr_gettype F GLIBC_2.12 pthread_mutexattr_setprioceiling F GLIBC_2.12 pthread_mutexattr_setpshared F -GLIBC_2.12 pthread_mutexattr_settype F GLIBC_2.12 pthread_once F GLIBC_2.12 pthread_rwlock_destroy F GLIBC_2.12 pthread_rwlock_init F diff --git a/sysdeps/mach/hurd/x86_64/libc.abilist b/sysdeps/mach/hurd/x86_64/libc.abilist index 1e83c9f1..4bff3073 100644 --- a/sysdeps/mach/hurd/x86_64/libc.abilist +++ b/sysdeps/mach/hurd/x86_64/libc.abilist @@ -1553,8 +1553,10 @@ GLIBC_2.38 pthread_mutex_lock F GLIBC_2.38 pthread_mutex_unlock F GLIBC_2.38 pthread_mutexattr_destroy F GLIBC_2.38 pthread_mutexattr_getprotocol F +GLIBC_2.38 pthread_mutexattr_gettype F GLIBC_2.38 pthread_mutexattr_init F GLIBC_2.38 pthread_mutexattr_setprotocol F +GLIBC_2.38 pthread_mutexattr_settype F GLIBC_2.38 pthread_self F GLIBC_2.38 pthread_setcancelstate F GLIBC_2.38 pthread_setcanceltype F @@ -2215,6 +2217,7 @@ GLIBC_2.41 pthread_condattr_getpshared F GLIBC_2.41 pthread_condattr_setclock F GLIBC_2.41 pthread_condattr_setpshared F GLIBC_2.41 pthread_mutexattr_getprotocol F +GLIBC_2.41 pthread_mutexattr_gettype F GLIBC_2.41 pthread_mutexattr_setprotocol F GLIBC_2.41 pthread_sigmask F HURD_CTHREADS_0.3 __cthread_getspecific F diff --git a/sysdeps/mach/hurd/x86_64/libpthread.abilist b/sysdeps/mach/hurd/x86_64/libpthread.abilist index 85a08b87..bd8a0363 100644 --- a/sysdeps/mach/hurd/x86_64/libpthread.abilist +++ b/sysdeps/mach/hurd/x86_64/libpthread.abilist @@ -77,12 +77,10 @@ GLIBC_2.38 pthread_mutexattr_getprioceiling F GLIBC_2.38 pthread_mutexattr_getpshared F GLIBC_2.38 pthread_mutexattr_getrobust F GLIBC_2.38 pthread_mutexattr_getrobust_np F -GLIBC_2.38 pthread_mutexattr_gettype F GLIBC_2.38 pthread_mutexattr_setprioceiling F GLIBC_2.38 pthread_mutexattr_setpshared F GLIBC_2.38 pthread_mutexattr_setrobust F GLIBC_2.38 pthread_mutexattr_setrobust_np F -GLIBC_2.38 pthread_mutexattr_settype F GLIBC_2.38 pthread_once F GLIBC_2.38 pthread_rwlock_clockrdlock F GLIBC_2.38 pthread_rwlock_clockwrlock F