From patchwork Fri Dec 4 18:09:39 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adhemerval Zanella X-Patchwork-Id: 41308 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 BE22239730E9; Fri, 4 Dec 2020 18:09:54 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org BE22239730E9 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1607105394; bh=oW17Wvl/uOqWCdA3ZrjCtxnHj+V4hu8eu6YiaZts9o8=; h=To:Subject:Date:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:Cc:From; b=bQPb7a0slDDcwT5kGFjsVWCyjsz2baTPgRDateduAvHTUNV+SghKKPzTZhIkk+8Kr XoLKn502QQurCy6D1FmyiSPy3ecU6bEZiPnKPla/IRqyWwzIb2Aa/2yMyWb87zh6Wn duqBU5Y5Kg/ZXRFuWkI2zDbnIzZk6KNExiqbLKdE= X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-qk1-x743.google.com (mail-qk1-x743.google.com [IPv6:2607:f8b0:4864:20::743]) by sourceware.org (Postfix) with ESMTPS id C48FB384A026 for ; Fri, 4 Dec 2020 18:09:50 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org C48FB384A026 Received: by mail-qk1-x743.google.com with SMTP id y197so6256745qkb.7 for ; Fri, 04 Dec 2020 10:09:50 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=oW17Wvl/uOqWCdA3ZrjCtxnHj+V4hu8eu6YiaZts9o8=; b=nPjUMzHlfY1+kzdk8u9N2lTwKLG9WWtk44Oqyrxs/KLAjhOOqik0H1Vy4onMHmYpaR 0Q+2GLaN/QfA2Vy8JKMjpjcuWBj8AaDH9odgr2pLna7QOe6i6zI0mn4LIe3+WQQIWoGv CwrAngeA6W9U0JeISKc5SsX0JLHTFLeb0/mRXiemsSPvYCa88Z57VQd8ugkIgMPn6fuQ fFC5Nr0GSKFS7grqdHXUjw2AT/tkAQZDd/dqKqpXNWSlrbb678QGEkyCG6tdZ3TTxXsb 2Aon7eCCdwF303s8wfz0ywAJxX2joi8OlIjDEWqhBuoAtY2cDeqrOnXbjNKlcs0tWMb2 /tlw== X-Gm-Message-State: AOAM532acP4SYCpwGYCmBvchijx1eCSDVsuzIUFL9WQsFibyeSG8zb4U dkwc6GJcvCk9W2LdhmF4mKJeOq9oiQ/AyA== X-Google-Smtp-Source: ABdhPJzpZRHnQ2LDoOwE5u9+nu28cpmBrAy5IAHj0bUgppm3JR6aPYO9M/xGz3tZg42FPkOAWUJOtA== X-Received: by 2002:a37:b384:: with SMTP id c126mr2424986qkf.418.1607105390015; Fri, 04 Dec 2020 10:09:50 -0800 (PST) Received: from localhost.localdomain ([177.194.48.209]) by smtp.googlemail.com with ESMTPSA id b33sm6179827qta.62.2020.12.04.10.09.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 04 Dec 2020 10:09:49 -0800 (PST) To: libc-alpha@sourceware.org Subject: [PATCH 1/6] nptl: Move Linux pthread_kill to nptl Date: Fri, 4 Dec 2020 15:09:39 -0300 Message-Id: <20201204180944.3774769-1-adhemerval.zanella@linaro.org> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-Spam-Status: No, score=-13.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Adhemerval Zanella via Libc-alpha From: Adhemerval Zanella Reply-To: Adhemerval Zanella Cc: Florian Weimer Errors-To: libc-alpha-bounces@sourceware.org Sender: "Libc-alpha" The nptl already expects a Linux syscall internak. Also __is_internal_signal and the DEBUGGING_P check is removed. Checked on x86_64-linux-gnu. --- nptl/pthread_kill.c | 28 ++++++++----- sysdeps/unix/sysv/linux/pthread_kill.c | 57 -------------------------- 2 files changed, 18 insertions(+), 67 deletions(-) delete mode 100644 sysdeps/unix/sysv/linux/pthread_kill.c diff --git a/nptl/pthread_kill.c b/nptl/pthread_kill.c index 73144a07ec..7ef68d1572 100644 --- a/nptl/pthread_kill.c +++ b/nptl/pthread_kill.c @@ -1,4 +1,4 @@ -/* Send a signal to a specific pthread. Stub version. +/* Send a signal to a specific pthread. Linux version. Copyright (C) 2014-2020 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -16,23 +16,31 @@ License along with the GNU C Library; if not, see . */ -#include -#include +#include #include - int __pthread_kill (pthread_t threadid, int signo) { + /* Disallow sending the signal we use for cancellation, timers, + for the setxid implementation. */ + if (__is_internal_signal (signo)) + return EINVAL; + + /* Force load of pd->tid into local variable or register. Otherwise + if a thread exits between ESRCH test and tgkill, we might return + EINVAL, because pd->tid would be cleared by the kernel. */ struct pthread *pd = (struct pthread *) threadid; - - /* Make sure the descriptor is valid. */ - if (DEBUGGING_P && INVALID_TD_P (pd)) + pid_t tid = atomic_forced_read (pd->tid); + if (__glibc_unlikely (tid <= 0)) /* Not a valid thread handle. */ return ESRCH; - return ENOSYS; + /* We have a special syscall to do the work. */ + pid_t pid = __getpid (); + + int val = INTERNAL_SYSCALL_CALL (tgkill, pid, tid, signo); + return (INTERNAL_SYSCALL_ERROR_P (val) + ? INTERNAL_SYSCALL_ERRNO (val) : 0); } strong_alias (__pthread_kill, pthread_kill) - -stub_warning (pthread_kill) diff --git a/sysdeps/unix/sysv/linux/pthread_kill.c b/sysdeps/unix/sysv/linux/pthread_kill.c deleted file mode 100644 index 4dfe08ffcd..0000000000 --- a/sysdeps/unix/sysv/linux/pthread_kill.c +++ /dev/null @@ -1,57 +0,0 @@ -/* Copyright (C) 2002-2020 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2002. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#include -#include -#include -#include -#include -#include - - -int -__pthread_kill (pthread_t threadid, int signo) -{ - struct pthread *pd = (struct pthread *) threadid; - - /* Make sure the descriptor is valid. */ - if (DEBUGGING_P && INVALID_TD_P (pd)) - /* Not a valid thread handle. */ - return ESRCH; - - /* Force load of pd->tid into local variable or register. Otherwise - if a thread exits between ESRCH test and tgkill, we might return - EINVAL, because pd->tid would be cleared by the kernel. */ - pid_t tid = atomic_forced_read (pd->tid); - if (__glibc_unlikely (tid <= 0)) - /* Not a valid thread handle. */ - return ESRCH; - - /* Disallow sending the signal we use for cancellation, timers, - for the setxid implementation. */ - if (signo == SIGCANCEL || signo == SIGTIMER || signo == SIGSETXID) - return EINVAL; - - /* We have a special syscall to do the work. */ - pid_t pid = __getpid (); - - int val = INTERNAL_SYSCALL_CALL (tgkill, pid, tid, signo); - return (INTERNAL_SYSCALL_ERROR_P (val) - ? INTERNAL_SYSCALL_ERRNO (val) : 0); -} -strong_alias (__pthread_kill, pthread_kill) From patchwork Fri Dec 4 18:09:40 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adhemerval Zanella X-Patchwork-Id: 41310 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 130313982432; Fri, 4 Dec 2020 18:09:59 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 130313982432 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1607105399; bh=RyjOgummxeTCkSusPxRZVk1ezu0Xk67HAUhPhaT7d2Q=; h=To:Subject:Date:In-Reply-To:References:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc: From; b=Y4Gp/dNDM1K/pFdaFtPbH3daOzy8dgJi42X3xH+ueMa4l8apbTlO5IX2yxQLfFTEm jHFF/btfN+u7Y9YOPnQhbvV6FkxOTnA9ehYI3RdoaZEzQtaszf/kr9/nn4firrQgRp STIGCUWlrhdzuGYrfdWkq82WWnYo3KNX5RDmImhE= X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-qk1-x733.google.com (mail-qk1-x733.google.com [IPv6:2607:f8b0:4864:20::733]) by sourceware.org (Postfix) with ESMTPS id CF1B0384A026 for ; Fri, 4 Dec 2020 18:09:53 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org CF1B0384A026 Received: by mail-qk1-x733.google.com with SMTP id v143so6286882qkb.2 for ; Fri, 04 Dec 2020 10:09:53 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=RyjOgummxeTCkSusPxRZVk1ezu0Xk67HAUhPhaT7d2Q=; b=qc8gjOrvgvrYbh2OafAakKzsrNkKjgHIfN9PkWBP38Xrh4qrQDQESM73yKaTtTRbhD NaymEIyIOASchL1IMCnOJTKaZNTJY1h6vSanIOXlghL8gU+ULulyiTs1jBa828u0nBCf tDRphd4vjS3MIq5YDvx84Ikl3BqAQve51ng62MjtFXCeWM/Pd4vVIbuWXWokA6fzoVUZ bmm4o9QceYsQeVgUCsi6w6oD6q6/OJT8kvlMP4evYD9F9AnwjlRuFR2P3DxlOZfKaJjz mvL5GZ6yy4UDtMFNapGaDJE4B6FbaL2OF7cq32H/z7SIYXpKijedsyWBSvdSC4U302vO okvQ== X-Gm-Message-State: AOAM530MZka9ehQUAhxK7Ky18G/B4TnX9PRGRtdJV9LhLJeLljtGrA4C GzRMsc0or24SH2YvnDB5vgB52YNn+AO8dA== X-Google-Smtp-Source: ABdhPJzfNVquT48S/ybECF3Sam0wBmbdPLVY4W61BfYT9z3g0xM+J+vuZR19U3mteuXF0DiNTpkN6w== X-Received: by 2002:a05:620a:164b:: with SMTP id c11mr10229872qko.203.1607105392006; Fri, 04 Dec 2020 10:09:52 -0800 (PST) Received: from localhost.localdomain ([177.194.48.209]) by smtp.googlemail.com with ESMTPSA id b33sm6179827qta.62.2020.12.04.10.09.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 04 Dec 2020 10:09:51 -0800 (PST) To: libc-alpha@sourceware.org Subject: [PATCH 2/6] nptl: Move pthread_kill to libc Date: Fri, 4 Dec 2020 15:09:40 -0300 Message-Id: <20201204180944.3774769-2-adhemerval.zanella@linaro.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201204180944.3774769-1-adhemerval.zanella@linaro.org> References: <20201204180944.3774769-1-adhemerval.zanella@linaro.org> MIME-Version: 1.0 X-Spam-Status: No, score=-13.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Adhemerval Zanella via Libc-alpha From: Adhemerval Zanella Reply-To: Adhemerval Zanella Cc: Florian Weimer Errors-To: libc-alpha-bounces@sourceware.org Sender: "Libc-alpha" Checked on x86_64-linux-gnu. --- nptl/Makefile | 3 ++- nptl/Versions | 1 + nptl/libpthread-compat.c | 6 ++++++ sysdeps/unix/sysv/linux/aarch64/libc.abilist | 1 + sysdeps/unix/sysv/linux/aarch64/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/alpha/libc.abilist | 1 + sysdeps/unix/sysv/linux/alpha/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/arc/libc.abilist | 1 + sysdeps/unix/sysv/linux/arc/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/arm/be/libc.abilist | 1 + sysdeps/unix/sysv/linux/arm/be/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/arm/le/libc.abilist | 1 + sysdeps/unix/sysv/linux/arm/le/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/csky/libc.abilist | 1 + sysdeps/unix/sysv/linux/csky/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/hppa/libc.abilist | 1 + sysdeps/unix/sysv/linux/hppa/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/i386/libc.abilist | 1 + sysdeps/unix/sysv/linux/i386/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/ia64/libc.abilist | 1 + sysdeps/unix/sysv/linux/ia64/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist | 1 + sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist | 1 + sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/microblaze/be/libc.abilist | 1 + sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/microblaze/le/libc.abilist | 1 + sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist | 1 + sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist | 1 + sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist | 1 + sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist | 1 + sysdeps/unix/sysv/linux/nios2/libc.abilist | 1 + sysdeps/unix/sysv/linux/nios2/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist | 1 + .../unix/sysv/linux/powerpc/powerpc32/libpthread.abilist | 1 - .../unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist | 1 + sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist | 1 + .../unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist | 1 + .../unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist | 1 + sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist | 1 + sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist | 1 + sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist | 1 + sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/sh/be/libc.abilist | 1 + sysdeps/unix/sysv/linux/sh/be/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/sh/le/libc.abilist | 1 + sysdeps/unix/sysv/linux/sh/le/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist | 1 + sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist | 1 + sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/x86_64/64/libc.abilist | 1 + sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist | 1 - sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist | 1 + sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist | 1 - 64 files changed, 41 insertions(+), 30 deletions(-) diff --git a/nptl/Makefile b/nptl/Makefile index ddd83dfbdd..3f6e77f63f 100644 --- a/nptl/Makefile +++ b/nptl/Makefile @@ -65,6 +65,7 @@ routines = \ pthread_getaffinity \ pthread_getattr_np \ pthread_getschedparam \ + pthread_kill \ pthread_self \ pthread_setschedparam \ pthread_sigmask \ @@ -131,7 +132,7 @@ libpthread-routines = nptl-init nptlfreeres vars events version pt-interp \ pthread_barrierattr_setpshared \ pthread_key_create pthread_key_delete \ pthread_getspecific pthread_setspecific \ - pthread_kill pthread_sigqueue \ + pthread_sigqueue \ pthread_cancel pthread_testcancel \ pthread_setcancelstate pthread_setcanceltype \ pthread_once \ diff --git a/nptl/Versions b/nptl/Versions index 02650fe91c..7cfe39a91c 100644 --- a/nptl/Versions +++ b/nptl/Versions @@ -12,6 +12,7 @@ libc { pthread_cond_timedwait; pthread_equal; pthread_exit; pthread_getschedparam; pthread_setschedparam; + pthread_kill; pthread_mutex_destroy; pthread_mutex_init; pthread_mutex_lock; pthread_mutex_unlock; pthread_self; diff --git a/nptl/libpthread-compat.c b/nptl/libpthread-compat.c index ec02b5dccf..a0856c5586 100644 --- a/nptl/libpthread-compat.c +++ b/nptl/libpthread-compat.c @@ -36,6 +36,12 @@ __libpthread_version_placeholder (void) 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_0, GLIBC_2_1_2)) +compat_symbol_unique (libpthread, + __libpthread_version_placeholder, GLIBC_2_0); +#endif + #if (SHLIB_COMPAT (libpthread, GLIBC_2_1_2, GLIBC_2_2)) compat_symbol_unique (libpthread, __libpthread_version_placeholder, GLIBC_2_1_2); diff --git a/sysdeps/unix/sysv/linux/aarch64/libc.abilist b/sysdeps/unix/sysv/linux/aarch64/libc.abilist index 4cc1c6a591..9bd30091b2 100644 --- a/sysdeps/unix/sysv/linux/aarch64/libc.abilist +++ b/sysdeps/unix/sysv/linux/aarch64/libc.abilist @@ -1442,6 +1442,7 @@ GLIBC_2.17 pthread_exit F GLIBC_2.17 pthread_getaffinity_np F GLIBC_2.17 pthread_getattr_np F GLIBC_2.17 pthread_getschedparam F +GLIBC_2.17 pthread_kill F GLIBC_2.17 pthread_mutex_destroy F GLIBC_2.17 pthread_mutex_init F GLIBC_2.17 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist index c6b4ea2dc1..18f2b38dca 100644 --- a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist @@ -102,7 +102,6 @@ GLIBC_2.17 pthread_getspecific F GLIBC_2.17 pthread_join F GLIBC_2.17 pthread_key_create F GLIBC_2.17 pthread_key_delete F -GLIBC_2.17 pthread_kill F GLIBC_2.17 pthread_kill_other_threads_np F GLIBC_2.17 pthread_mutex_consistent F GLIBC_2.17 pthread_mutex_consistent_np F diff --git a/sysdeps/unix/sysv/linux/alpha/libc.abilist b/sysdeps/unix/sysv/linux/alpha/libc.abilist index 26ad9845e4..8d0d149380 100644 --- a/sysdeps/unix/sysv/linux/alpha/libc.abilist +++ b/sysdeps/unix/sysv/linux/alpha/libc.abilist @@ -883,6 +883,7 @@ GLIBC_2.0 pthread_condattr_init F GLIBC_2.0 pthread_equal F GLIBC_2.0 pthread_exit F GLIBC_2.0 pthread_getschedparam F +GLIBC_2.0 pthread_kill F GLIBC_2.0 pthread_mutex_destroy F GLIBC_2.0 pthread_mutex_init F GLIBC_2.0 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist index 390b6384d0..a05379d8d7 100644 --- a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist @@ -56,7 +56,6 @@ GLIBC_2.0 pthread_getspecific F GLIBC_2.0 pthread_join F GLIBC_2.0 pthread_key_create F GLIBC_2.0 pthread_key_delete F -GLIBC_2.0 pthread_kill F GLIBC_2.0 pthread_kill_other_threads_np F GLIBC_2.0 pthread_mutex_destroy F GLIBC_2.0 pthread_mutex_init F diff --git a/sysdeps/unix/sysv/linux/arc/libc.abilist b/sysdeps/unix/sysv/linux/arc/libc.abilist index bb9dfd4daf..59e73552a9 100644 --- a/sysdeps/unix/sysv/linux/arc/libc.abilist +++ b/sysdeps/unix/sysv/linux/arc/libc.abilist @@ -1369,6 +1369,7 @@ GLIBC_2.32 pthread_exit F GLIBC_2.32 pthread_getaffinity_np F GLIBC_2.32 pthread_getattr_np F GLIBC_2.32 pthread_getschedparam F +GLIBC_2.32 pthread_kill F GLIBC_2.32 pthread_mutex_destroy F GLIBC_2.32 pthread_mutex_init F GLIBC_2.32 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/arc/libpthread.abilist b/sysdeps/unix/sysv/linux/arc/libpthread.abilist index 1adcbecc2e..9a5a035490 100644 --- a/sysdeps/unix/sysv/linux/arc/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/arc/libpthread.abilist @@ -113,7 +113,6 @@ GLIBC_2.32 pthread_getspecific F GLIBC_2.32 pthread_join F GLIBC_2.32 pthread_key_create F GLIBC_2.32 pthread_key_delete F -GLIBC_2.32 pthread_kill F GLIBC_2.32 pthread_kill_other_threads_np F GLIBC_2.32 pthread_mutex_clocklock F GLIBC_2.32 pthread_mutex_consistent F diff --git a/sysdeps/unix/sysv/linux/arm/be/libc.abilist b/sysdeps/unix/sysv/linux/arm/be/libc.abilist index 3b0a47e967..fb76fc2a9e 100644 --- a/sysdeps/unix/sysv/linux/arm/be/libc.abilist +++ b/sysdeps/unix/sysv/linux/arm/be/libc.abilist @@ -1534,6 +1534,7 @@ GLIBC_2.4 pthread_exit F GLIBC_2.4 pthread_getaffinity_np F GLIBC_2.4 pthread_getattr_np F GLIBC_2.4 pthread_getschedparam F +GLIBC_2.4 pthread_kill F GLIBC_2.4 pthread_mutex_destroy F GLIBC_2.4 pthread_mutex_init F GLIBC_2.4 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist index b6c26c7a50..fc7343bae9 100644 --- a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist @@ -136,7 +136,6 @@ GLIBC_2.4 pthread_getspecific F GLIBC_2.4 pthread_join F GLIBC_2.4 pthread_key_create F GLIBC_2.4 pthread_key_delete F -GLIBC_2.4 pthread_kill F GLIBC_2.4 pthread_kill_other_threads_np F GLIBC_2.4 pthread_mutex_consistent_np F GLIBC_2.4 pthread_mutex_destroy F diff --git a/sysdeps/unix/sysv/linux/arm/le/libc.abilist b/sysdeps/unix/sysv/linux/arm/le/libc.abilist index 9ab3924888..a8199f5de9 100644 --- a/sysdeps/unix/sysv/linux/arm/le/libc.abilist +++ b/sysdeps/unix/sysv/linux/arm/le/libc.abilist @@ -1531,6 +1531,7 @@ GLIBC_2.4 pthread_exit F GLIBC_2.4 pthread_getaffinity_np F GLIBC_2.4 pthread_getattr_np F GLIBC_2.4 pthread_getschedparam F +GLIBC_2.4 pthread_kill F GLIBC_2.4 pthread_mutex_destroy F GLIBC_2.4 pthread_mutex_init F GLIBC_2.4 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist index b6c26c7a50..fc7343bae9 100644 --- a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist @@ -136,7 +136,6 @@ GLIBC_2.4 pthread_getspecific F GLIBC_2.4 pthread_join F GLIBC_2.4 pthread_key_create F GLIBC_2.4 pthread_key_delete F -GLIBC_2.4 pthread_kill F GLIBC_2.4 pthread_kill_other_threads_np F GLIBC_2.4 pthread_mutex_consistent_np F GLIBC_2.4 pthread_mutex_destroy F diff --git a/sysdeps/unix/sysv/linux/csky/libc.abilist b/sysdeps/unix/sysv/linux/csky/libc.abilist index 14a84dac8f..7f038c4e6f 100644 --- a/sysdeps/unix/sysv/linux/csky/libc.abilist +++ b/sysdeps/unix/sysv/linux/csky/libc.abilist @@ -1430,6 +1430,7 @@ GLIBC_2.29 pthread_exit F GLIBC_2.29 pthread_getaffinity_np F GLIBC_2.29 pthread_getattr_np F GLIBC_2.29 pthread_getschedparam F +GLIBC_2.29 pthread_kill F GLIBC_2.29 pthread_mutex_destroy F GLIBC_2.29 pthread_mutex_init F GLIBC_2.29 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/csky/libpthread.abilist b/sysdeps/unix/sysv/linux/csky/libpthread.abilist index 6ce59276a7..d82933bab8 100644 --- a/sysdeps/unix/sysv/linux/csky/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/csky/libpthread.abilist @@ -111,7 +111,6 @@ GLIBC_2.29 pthread_getspecific F GLIBC_2.29 pthread_join F GLIBC_2.29 pthread_key_create F GLIBC_2.29 pthread_key_delete F -GLIBC_2.29 pthread_kill F GLIBC_2.29 pthread_kill_other_threads_np F GLIBC_2.29 pthread_mutex_consistent F GLIBC_2.29 pthread_mutex_consistent_np F diff --git a/sysdeps/unix/sysv/linux/hppa/libc.abilist b/sysdeps/unix/sysv/linux/hppa/libc.abilist index 5c8502f3d3..4afe849736 100644 --- a/sysdeps/unix/sysv/linux/hppa/libc.abilist +++ b/sysdeps/unix/sysv/linux/hppa/libc.abilist @@ -1266,6 +1266,7 @@ GLIBC_2.2 pthread_condattr_init F GLIBC_2.2 pthread_equal F GLIBC_2.2 pthread_exit F GLIBC_2.2 pthread_getschedparam F +GLIBC_2.2 pthread_kill F GLIBC_2.2 pthread_mutex_destroy F GLIBC_2.2 pthread_mutex_init F GLIBC_2.2 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist index cabc5af858..041f965447 100644 --- a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist @@ -100,7 +100,6 @@ GLIBC_2.2 pthread_getspecific F GLIBC_2.2 pthread_join F GLIBC_2.2 pthread_key_create F GLIBC_2.2 pthread_key_delete F -GLIBC_2.2 pthread_kill F GLIBC_2.2 pthread_kill_other_threads_np F GLIBC_2.2 pthread_mutex_destroy F GLIBC_2.2 pthread_mutex_init F diff --git a/sysdeps/unix/sysv/linux/i386/libc.abilist b/sysdeps/unix/sysv/linux/i386/libc.abilist index 4f0d3c1eb5..4d4e4bca71 100644 --- a/sysdeps/unix/sysv/linux/i386/libc.abilist +++ b/sysdeps/unix/sysv/linux/i386/libc.abilist @@ -860,6 +860,7 @@ GLIBC_2.0 pthread_condattr_init F GLIBC_2.0 pthread_equal F GLIBC_2.0 pthread_exit F GLIBC_2.0 pthread_getschedparam F +GLIBC_2.0 pthread_kill F GLIBC_2.0 pthread_mutex_destroy F GLIBC_2.0 pthread_mutex_init F GLIBC_2.0 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/i386/libpthread.abilist b/sysdeps/unix/sysv/linux/i386/libpthread.abilist index 18177307c8..8875b14ad1 100644 --- a/sysdeps/unix/sysv/linux/i386/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/i386/libpthread.abilist @@ -56,7 +56,6 @@ GLIBC_2.0 pthread_getspecific F GLIBC_2.0 pthread_join F GLIBC_2.0 pthread_key_create F GLIBC_2.0 pthread_key_delete F -GLIBC_2.0 pthread_kill F GLIBC_2.0 pthread_kill_other_threads_np F GLIBC_2.0 pthread_mutex_destroy F GLIBC_2.0 pthread_mutex_init F diff --git a/sysdeps/unix/sysv/linux/ia64/libc.abilist b/sysdeps/unix/sysv/linux/ia64/libc.abilist index e3b345b803..1fd9df36d2 100644 --- a/sysdeps/unix/sysv/linux/ia64/libc.abilist +++ b/sysdeps/unix/sysv/linux/ia64/libc.abilist @@ -1287,6 +1287,7 @@ GLIBC_2.2 pthread_condattr_init F GLIBC_2.2 pthread_equal F GLIBC_2.2 pthread_exit F GLIBC_2.2 pthread_getschedparam F +GLIBC_2.2 pthread_kill F GLIBC_2.2 pthread_mutex_destroy F GLIBC_2.2 pthread_mutex_init F GLIBC_2.2 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist index 335f486cb5..998d7d2d99 100644 --- a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist @@ -100,7 +100,6 @@ GLIBC_2.2 pthread_getspecific F GLIBC_2.2 pthread_join F GLIBC_2.2 pthread_key_create F GLIBC_2.2 pthread_key_delete F -GLIBC_2.2 pthread_kill F GLIBC_2.2 pthread_kill_other_threads_np F GLIBC_2.2 pthread_mutex_destroy F GLIBC_2.2 pthread_mutex_init F diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist index 25f2d1c08f..38b379a876 100644 --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist @@ -1514,6 +1514,7 @@ GLIBC_2.4 pthread_exit F GLIBC_2.4 pthread_getaffinity_np F GLIBC_2.4 pthread_getattr_np F GLIBC_2.4 pthread_getschedparam F +GLIBC_2.4 pthread_kill F GLIBC_2.4 pthread_mutex_destroy F GLIBC_2.4 pthread_mutex_init F GLIBC_2.4 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist index b6c26c7a50..fc7343bae9 100644 --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist @@ -136,7 +136,6 @@ GLIBC_2.4 pthread_getspecific F GLIBC_2.4 pthread_join F GLIBC_2.4 pthread_key_create F GLIBC_2.4 pthread_key_delete F -GLIBC_2.4 pthread_kill F GLIBC_2.4 pthread_kill_other_threads_np F GLIBC_2.4 pthread_mutex_consistent_np F GLIBC_2.4 pthread_mutex_destroy F diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist index c4891479d3..0704160e7c 100644 --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist @@ -859,6 +859,7 @@ GLIBC_2.0 pthread_condattr_init F GLIBC_2.0 pthread_equal F GLIBC_2.0 pthread_exit F GLIBC_2.0 pthread_getschedparam F +GLIBC_2.0 pthread_kill F GLIBC_2.0 pthread_mutex_destroy F GLIBC_2.0 pthread_mutex_init F GLIBC_2.0 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist index 18177307c8..8875b14ad1 100644 --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist @@ -56,7 +56,6 @@ GLIBC_2.0 pthread_getspecific F GLIBC_2.0 pthread_join F GLIBC_2.0 pthread_key_create F GLIBC_2.0 pthread_key_delete F -GLIBC_2.0 pthread_kill F GLIBC_2.0 pthread_kill_other_threads_np F GLIBC_2.0 pthread_mutex_destroy F GLIBC_2.0 pthread_mutex_init F diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist index 143b0163b4..f4ded90314 100644 --- a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist @@ -1445,6 +1445,7 @@ GLIBC_2.18 pthread_exit F GLIBC_2.18 pthread_getaffinity_np F GLIBC_2.18 pthread_getattr_np F GLIBC_2.18 pthread_getschedparam F +GLIBC_2.18 pthread_kill F GLIBC_2.18 pthread_mutex_destroy F GLIBC_2.18 pthread_mutex_init F GLIBC_2.18 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist index 60397187b6..6a26159353 100644 --- a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist @@ -103,7 +103,6 @@ GLIBC_2.18 pthread_getspecific F GLIBC_2.18 pthread_join F GLIBC_2.18 pthread_key_create F GLIBC_2.18 pthread_key_delete F -GLIBC_2.18 pthread_kill F GLIBC_2.18 pthread_kill_other_threads_np F GLIBC_2.18 pthread_mutex_consistent F GLIBC_2.18 pthread_mutex_consistent_np F diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist index 13d374a031..fac0b0f773 100644 --- a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist @@ -1445,6 +1445,7 @@ GLIBC_2.18 pthread_exit F GLIBC_2.18 pthread_getaffinity_np F GLIBC_2.18 pthread_getattr_np F GLIBC_2.18 pthread_getschedparam F +GLIBC_2.18 pthread_kill F GLIBC_2.18 pthread_mutex_destroy F GLIBC_2.18 pthread_mutex_init F GLIBC_2.18 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist index 60397187b6..6a26159353 100644 --- a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist @@ -103,7 +103,6 @@ GLIBC_2.18 pthread_getspecific F GLIBC_2.18 pthread_join F GLIBC_2.18 pthread_key_create F GLIBC_2.18 pthread_key_delete F -GLIBC_2.18 pthread_kill F GLIBC_2.18 pthread_kill_other_threads_np F GLIBC_2.18 pthread_mutex_consistent F GLIBC_2.18 pthread_mutex_consistent_np F diff --git a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist index b2295f1937..18492fce28 100644 --- a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist @@ -856,6 +856,7 @@ GLIBC_2.0 pthread_condattr_init F GLIBC_2.0 pthread_equal F GLIBC_2.0 pthread_exit F GLIBC_2.0 pthread_getschedparam F +GLIBC_2.0 pthread_kill F GLIBC_2.0 pthread_mutex_destroy F GLIBC_2.0 pthread_mutex_init F GLIBC_2.0 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist index b35d7f19ca..42112cee49 100644 --- a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist @@ -56,7 +56,6 @@ GLIBC_2.0 pthread_getspecific F GLIBC_2.0 pthread_join F GLIBC_2.0 pthread_key_create F GLIBC_2.0 pthread_key_delete F -GLIBC_2.0 pthread_kill F GLIBC_2.0 pthread_kill_other_threads_np F GLIBC_2.0 pthread_mutex_destroy F GLIBC_2.0 pthread_mutex_init F diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist index 4c786070d0..1d1e9e0d90 100644 --- a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist @@ -856,6 +856,7 @@ GLIBC_2.0 pthread_condattr_init F GLIBC_2.0 pthread_equal F GLIBC_2.0 pthread_exit F GLIBC_2.0 pthread_getschedparam F +GLIBC_2.0 pthread_kill F GLIBC_2.0 pthread_mutex_destroy F GLIBC_2.0 pthread_mutex_init F GLIBC_2.0 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist index b35d7f19ca..42112cee49 100644 --- a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist @@ -56,7 +56,6 @@ GLIBC_2.0 pthread_getspecific F GLIBC_2.0 pthread_join F GLIBC_2.0 pthread_key_create F GLIBC_2.0 pthread_key_delete F -GLIBC_2.0 pthread_kill F GLIBC_2.0 pthread_kill_other_threads_np F GLIBC_2.0 pthread_mutex_destroy F GLIBC_2.0 pthread_mutex_init F diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist index aa9c6a4dca..364f58a555 100644 --- a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist @@ -856,6 +856,7 @@ GLIBC_2.0 pthread_condattr_init F GLIBC_2.0 pthread_equal F GLIBC_2.0 pthread_exit F GLIBC_2.0 pthread_getschedparam F +GLIBC_2.0 pthread_kill F GLIBC_2.0 pthread_mutex_destroy F GLIBC_2.0 pthread_mutex_init F GLIBC_2.0 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist index 5939588ad5..69c1dfc372 100644 --- a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist @@ -854,6 +854,7 @@ GLIBC_2.0 pthread_condattr_init F GLIBC_2.0 pthread_equal F GLIBC_2.0 pthread_exit F GLIBC_2.0 pthread_getschedparam F +GLIBC_2.0 pthread_kill F GLIBC_2.0 pthread_mutex_destroy F GLIBC_2.0 pthread_mutex_init F GLIBC_2.0 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/nios2/libc.abilist b/sysdeps/unix/sysv/linux/nios2/libc.abilist index 92556c4237..dc26597034 100644 --- a/sysdeps/unix/sysv/linux/nios2/libc.abilist +++ b/sysdeps/unix/sysv/linux/nios2/libc.abilist @@ -1487,6 +1487,7 @@ GLIBC_2.21 pthread_exit F GLIBC_2.21 pthread_getaffinity_np F GLIBC_2.21 pthread_getattr_np F GLIBC_2.21 pthread_getschedparam F +GLIBC_2.21 pthread_kill F GLIBC_2.21 pthread_mutex_destroy F GLIBC_2.21 pthread_mutex_init F GLIBC_2.21 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist index 924ad6e451..b1061cdbdd 100644 --- a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist @@ -103,7 +103,6 @@ GLIBC_2.21 pthread_getspecific F GLIBC_2.21 pthread_join F GLIBC_2.21 pthread_key_create F GLIBC_2.21 pthread_key_delete F -GLIBC_2.21 pthread_kill F GLIBC_2.21 pthread_kill_other_threads_np F GLIBC_2.21 pthread_mutex_consistent F GLIBC_2.21 pthread_mutex_consistent_np F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist index 26c93dff05..ca1ccde821 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist @@ -867,6 +867,7 @@ GLIBC_2.0 pthread_condattr_init F GLIBC_2.0 pthread_equal F GLIBC_2.0 pthread_exit F GLIBC_2.0 pthread_getschedparam F +GLIBC_2.0 pthread_kill F GLIBC_2.0 pthread_mutex_destroy F GLIBC_2.0 pthread_mutex_init F GLIBC_2.0 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist index 13b41dafb6..abb726e354 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist @@ -56,7 +56,6 @@ GLIBC_2.0 pthread_getspecific F GLIBC_2.0 pthread_join F GLIBC_2.0 pthread_key_create F GLIBC_2.0 pthread_key_delete F -GLIBC_2.0 pthread_kill F GLIBC_2.0 pthread_kill_other_threads_np F GLIBC_2.0 pthread_mutex_destroy F GLIBC_2.0 pthread_mutex_init F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist index f04b167788..b3334d5e07 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist @@ -867,6 +867,7 @@ GLIBC_2.0 pthread_condattr_init F GLIBC_2.0 pthread_equal F GLIBC_2.0 pthread_exit F GLIBC_2.0 pthread_getschedparam F +GLIBC_2.0 pthread_kill F GLIBC_2.0 pthread_mutex_destroy F GLIBC_2.0 pthread_mutex_init F GLIBC_2.0 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist index c2ca00709e..64c4634b3b 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist @@ -1373,6 +1373,7 @@ GLIBC_2.3 pthread_equal F GLIBC_2.3 pthread_exit F GLIBC_2.3 pthread_getattr_np F GLIBC_2.3 pthread_getschedparam F +GLIBC_2.3 pthread_kill F GLIBC_2.3 pthread_mutex_destroy F GLIBC_2.3 pthread_mutex_init F GLIBC_2.3 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist index e9477a3584..7edba91681 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist @@ -120,7 +120,6 @@ GLIBC_2.3 pthread_getspecific F GLIBC_2.3 pthread_join F GLIBC_2.3 pthread_key_create F GLIBC_2.3 pthread_key_delete F -GLIBC_2.3 pthread_kill F GLIBC_2.3 pthread_kill_other_threads_np F GLIBC_2.3 pthread_mutex_destroy F GLIBC_2.3 pthread_mutex_init F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist index 0ea50dc851..588436eadf 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist @@ -1531,6 +1531,7 @@ GLIBC_2.17 pthread_exit F GLIBC_2.17 pthread_getaffinity_np F GLIBC_2.17 pthread_getattr_np F GLIBC_2.17 pthread_getschedparam F +GLIBC_2.17 pthread_kill F GLIBC_2.17 pthread_mutex_destroy F GLIBC_2.17 pthread_mutex_init F GLIBC_2.17 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist index c6b4ea2dc1..18f2b38dca 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist @@ -102,7 +102,6 @@ GLIBC_2.17 pthread_getspecific F GLIBC_2.17 pthread_join F GLIBC_2.17 pthread_key_create F GLIBC_2.17 pthread_key_delete F -GLIBC_2.17 pthread_kill F GLIBC_2.17 pthread_kill_other_threads_np F GLIBC_2.17 pthread_mutex_consistent F GLIBC_2.17 pthread_mutex_consistent_np F diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist index 0263e284d4..5d471b76dd 100644 --- a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist +++ b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist @@ -1371,6 +1371,7 @@ GLIBC_2.33 pthread_exit F GLIBC_2.33 pthread_getaffinity_np F GLIBC_2.33 pthread_getattr_np F GLIBC_2.33 pthread_getschedparam F +GLIBC_2.33 pthread_kill F GLIBC_2.33 pthread_mutex_destroy F GLIBC_2.33 pthread_mutex_init F GLIBC_2.33 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist index 61b3c4ff7a..0023fa95df 100644 --- a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist @@ -113,7 +113,6 @@ GLIBC_2.33 pthread_getspecific F GLIBC_2.33 pthread_join F GLIBC_2.33 pthread_key_create F GLIBC_2.33 pthread_key_delete F -GLIBC_2.33 pthread_kill F GLIBC_2.33 pthread_kill_other_threads_np F GLIBC_2.33 pthread_mutex_clocklock F GLIBC_2.33 pthread_mutex_consistent F diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist index 1626c5351f..a851e6e26a 100644 --- a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist +++ b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist @@ -1433,6 +1433,7 @@ GLIBC_2.27 pthread_exit F GLIBC_2.27 pthread_getaffinity_np F GLIBC_2.27 pthread_getattr_np F GLIBC_2.27 pthread_getschedparam F +GLIBC_2.27 pthread_kill F GLIBC_2.27 pthread_mutex_destroy F GLIBC_2.27 pthread_mutex_init F GLIBC_2.27 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist index 894c474fcb..faeb8dd7b6 100644 --- a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist @@ -100,7 +100,6 @@ GLIBC_2.27 pthread_getspecific F GLIBC_2.27 pthread_join F GLIBC_2.27 pthread_key_create F GLIBC_2.27 pthread_key_delete F -GLIBC_2.27 pthread_kill F GLIBC_2.27 pthread_kill_other_threads_np F GLIBC_2.27 pthread_mutex_consistent F GLIBC_2.27 pthread_mutex_consistent_np F diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist index a66426eb4d..8ca57937b4 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist @@ -858,6 +858,7 @@ GLIBC_2.0 pthread_condattr_init F GLIBC_2.0 pthread_equal F GLIBC_2.0 pthread_exit F GLIBC_2.0 pthread_getschedparam F +GLIBC_2.0 pthread_kill F GLIBC_2.0 pthread_mutex_destroy F GLIBC_2.0 pthread_mutex_init F GLIBC_2.0 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist index 0a60f1cca2..41f7d4371b 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist @@ -56,7 +56,6 @@ GLIBC_2.0 pthread_getspecific F GLIBC_2.0 pthread_join F GLIBC_2.0 pthread_key_create F GLIBC_2.0 pthread_key_delete F -GLIBC_2.0 pthread_kill F GLIBC_2.0 pthread_kill_other_threads_np F GLIBC_2.0 pthread_mutex_destroy F GLIBC_2.0 pthread_mutex_init F diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist index ab351873ae..45eb1b4878 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist @@ -1284,6 +1284,7 @@ GLIBC_2.2 pthread_condattr_init F GLIBC_2.2 pthread_equal F GLIBC_2.2 pthread_exit F GLIBC_2.2 pthread_getschedparam F +GLIBC_2.2 pthread_kill F GLIBC_2.2 pthread_mutex_destroy F GLIBC_2.2 pthread_mutex_init F GLIBC_2.2 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist index 0e99688824..dca95c3126 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist @@ -102,7 +102,6 @@ GLIBC_2.2 pthread_getspecific F GLIBC_2.2 pthread_join F GLIBC_2.2 pthread_key_create F GLIBC_2.2 pthread_key_delete F -GLIBC_2.2 pthread_kill F GLIBC_2.2 pthread_kill_other_threads_np F GLIBC_2.2 pthread_mutex_destroy F GLIBC_2.2 pthread_mutex_init F diff --git a/sysdeps/unix/sysv/linux/sh/be/libc.abilist b/sysdeps/unix/sysv/linux/sh/be/libc.abilist index 22ceaa3d87..7cb0df1c3b 100644 --- a/sysdeps/unix/sysv/linux/sh/be/libc.abilist +++ b/sysdeps/unix/sysv/linux/sh/be/libc.abilist @@ -1270,6 +1270,7 @@ GLIBC_2.2 pthread_condattr_init F GLIBC_2.2 pthread_equal F GLIBC_2.2 pthread_exit F GLIBC_2.2 pthread_getschedparam F +GLIBC_2.2 pthread_kill F GLIBC_2.2 pthread_mutex_destroy F GLIBC_2.2 pthread_mutex_init F GLIBC_2.2 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist index cabc5af858..041f965447 100644 --- a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist @@ -100,7 +100,6 @@ GLIBC_2.2 pthread_getspecific F GLIBC_2.2 pthread_join F GLIBC_2.2 pthread_key_create F GLIBC_2.2 pthread_key_delete F -GLIBC_2.2 pthread_kill F GLIBC_2.2 pthread_kill_other_threads_np F GLIBC_2.2 pthread_mutex_destroy F GLIBC_2.2 pthread_mutex_init F diff --git a/sysdeps/unix/sysv/linux/sh/le/libc.abilist b/sysdeps/unix/sysv/linux/sh/le/libc.abilist index d36f228192..b8acbd5839 100644 --- a/sysdeps/unix/sysv/linux/sh/le/libc.abilist +++ b/sysdeps/unix/sysv/linux/sh/le/libc.abilist @@ -1270,6 +1270,7 @@ GLIBC_2.2 pthread_condattr_init F GLIBC_2.2 pthread_equal F GLIBC_2.2 pthread_exit F GLIBC_2.2 pthread_getschedparam F +GLIBC_2.2 pthread_kill F GLIBC_2.2 pthread_mutex_destroy F GLIBC_2.2 pthread_mutex_init F GLIBC_2.2 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist index cabc5af858..041f965447 100644 --- a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist @@ -100,7 +100,6 @@ GLIBC_2.2 pthread_getspecific F GLIBC_2.2 pthread_join F GLIBC_2.2 pthread_key_create F GLIBC_2.2 pthread_key_delete F -GLIBC_2.2 pthread_kill F GLIBC_2.2 pthread_kill_other_threads_np F GLIBC_2.2 pthread_mutex_destroy F GLIBC_2.2 pthread_mutex_init F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist index 59b4313280..b8583563b5 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist @@ -861,6 +861,7 @@ GLIBC_2.0 pthread_condattr_init F GLIBC_2.0 pthread_equal F GLIBC_2.0 pthread_exit F GLIBC_2.0 pthread_getschedparam F +GLIBC_2.0 pthread_kill F GLIBC_2.0 pthread_mutex_destroy F GLIBC_2.0 pthread_mutex_init F GLIBC_2.0 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist index 390b6384d0..a05379d8d7 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist @@ -56,7 +56,6 @@ GLIBC_2.0 pthread_getspecific F GLIBC_2.0 pthread_join F GLIBC_2.0 pthread_key_create F GLIBC_2.0 pthread_key_delete F -GLIBC_2.0 pthread_kill F GLIBC_2.0 pthread_kill_other_threads_np F GLIBC_2.0 pthread_mutex_destroy F GLIBC_2.0 pthread_mutex_init F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist index 266dcdfa08..2f27067543 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist @@ -1313,6 +1313,7 @@ GLIBC_2.2 pthread_condattr_init F GLIBC_2.2 pthread_equal F GLIBC_2.2 pthread_exit F GLIBC_2.2 pthread_getschedparam F +GLIBC_2.2 pthread_kill F GLIBC_2.2 pthread_mutex_destroy F GLIBC_2.2 pthread_mutex_init F GLIBC_2.2 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist index 335f486cb5..998d7d2d99 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist @@ -100,7 +100,6 @@ GLIBC_2.2 pthread_getspecific F GLIBC_2.2 pthread_join F GLIBC_2.2 pthread_key_create F GLIBC_2.2 pthread_key_delete F -GLIBC_2.2 pthread_kill F GLIBC_2.2 pthread_kill_other_threads_np F GLIBC_2.2 pthread_mutex_destroy F GLIBC_2.2 pthread_mutex_init F diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist index 4fff61818b..4541c8b54e 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist @@ -1281,6 +1281,7 @@ GLIBC_2.2.5 pthread_equal F GLIBC_2.2.5 pthread_exit F GLIBC_2.2.5 pthread_getattr_np F GLIBC_2.2.5 pthread_getschedparam F +GLIBC_2.2.5 pthread_kill F GLIBC_2.2.5 pthread_mutex_destroy F GLIBC_2.2.5 pthread_mutex_init F GLIBC_2.2.5 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist index 971269d2ef..2a74e40f01 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist @@ -100,7 +100,6 @@ GLIBC_2.2.5 pthread_getspecific F GLIBC_2.2.5 pthread_join F GLIBC_2.2.5 pthread_key_create F GLIBC_2.2.5 pthread_key_delete F -GLIBC_2.2.5 pthread_kill F GLIBC_2.2.5 pthread_kill_other_threads_np F GLIBC_2.2.5 pthread_mutex_destroy F GLIBC_2.2.5 pthread_mutex_init F diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist index 102ed47a9c..d14923e737 100644 --- a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist @@ -1450,6 +1450,7 @@ GLIBC_2.16 pthread_exit F GLIBC_2.16 pthread_getaffinity_np F GLIBC_2.16 pthread_getattr_np F GLIBC_2.16 pthread_getschedparam F +GLIBC_2.16 pthread_kill F GLIBC_2.16 pthread_mutex_destroy F GLIBC_2.16 pthread_mutex_init F GLIBC_2.16 pthread_mutex_lock F diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist index b9bf4324a9..81f294c3e0 100644 --- a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist @@ -102,7 +102,6 @@ GLIBC_2.16 pthread_getspecific F GLIBC_2.16 pthread_join F GLIBC_2.16 pthread_key_create F GLIBC_2.16 pthread_key_delete F -GLIBC_2.16 pthread_kill F GLIBC_2.16 pthread_kill_other_threads_np F GLIBC_2.16 pthread_mutex_consistent F GLIBC_2.16 pthread_mutex_consistent_np F From patchwork Fri Dec 4 18:09:41 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adhemerval Zanella X-Patchwork-Id: 41309 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 6AD663982430; Fri, 4 Dec 2020 18:09:57 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 6AD663982430 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1607105397; bh=8CKJutt4WONGV+x0Br04SKMg6qQzBTzft6/n+7i/uX0=; h=To:Subject:Date:In-Reply-To:References:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc: From; b=wCZa8j3xaI2nRL6ddt1irBNfixscZWLKglmpU4tFcQyy0hcPfbWKUelarRd8KC8Ng pm4trC1DgfbfmCNe4QfHrfSGA1M/FA/V/WLIc8+SXG5SUhXawGuo2z4VBaWAQBsaYI G9uPHOHVftLjkgQgmB/qdRhiIWhLUr/lo6f0bS+A= X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-qk1-x744.google.com (mail-qk1-x744.google.com [IPv6:2607:f8b0:4864:20::744]) by sourceware.org (Postfix) with ESMTPS id 07E91397A013 for ; Fri, 4 Dec 2020 18:09:55 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 07E91397A013 Received: by mail-qk1-x744.google.com with SMTP id q22so6271292qkq.6 for ; Fri, 04 Dec 2020 10:09:55 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=8CKJutt4WONGV+x0Br04SKMg6qQzBTzft6/n+7i/uX0=; b=O7+KAI0GG1dlkIIw8FZYjVqS7Y24vRy0mjDNbsgVulEnvF/gKaqYnveILeU+RKA/ps ZvAPgkGnyS7ebR5EfJSQiJcG9lasS2HqAKObCy4j//pKsWwaRnvPtaGeUMEQXEVrMc2N sKuUQ+jL0v9vdijRX+YaYCboS9cNKtrukDBXxOx/xPPuqg47xmDN8VvJoH+niHJz5o/J y5kFdQ1vask7CpBznTEQPICbSig0S670ISWXNDwLeF+KBBlcpPjAck2U+SWvOrFq2Vpq 0f4tTdLHvZhRF6737roF+4qXX5VAGYnXMAaiSrK5LF+2OLSYIJYbn40u3b1Vwa5kU7mF Bpew== X-Gm-Message-State: AOAM530si92I0lMlwM2vkY34484x/MCcUXmkPIRiOT4oBiFguJ6HQj1O lKKpGPoZydrH1vpdN+BY5ERFCmLpVxQelQ== X-Google-Smtp-Source: ABdhPJxRnI8jgQy9cVM18qcy/OjrQBlS/h6VnD2MP89CBRqWHHbfqr2RjR5kGPWQGLKUEbm7yPoCcA== X-Received: by 2002:a05:620a:7ea:: with SMTP id k10mr10091941qkk.292.1607105394025; Fri, 04 Dec 2020 10:09:54 -0800 (PST) Received: from localhost.localdomain ([177.194.48.209]) by smtp.googlemail.com with ESMTPSA id b33sm6179827qta.62.2020.12.04.10.09.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 04 Dec 2020 10:09:53 -0800 (PST) To: libc-alpha@sourceware.org Subject: [PATCH 3/6] nptl: Make pthread_kill async-signal-safe Date: Fri, 4 Dec 2020 15:09:41 -0300 Message-Id: <20201204180944.3774769-3-adhemerval.zanella@linaro.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201204180944.3774769-1-adhemerval.zanella@linaro.org> References: <20201204180944.3774769-1-adhemerval.zanella@linaro.org> MIME-Version: 1.0 X-Spam-Status: No, score=-13.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Adhemerval Zanella via Libc-alpha From: Adhemerval Zanella Reply-To: Adhemerval Zanella Cc: Florian Weimer Errors-To: libc-alpha-bounces@sourceware.org Sender: "Libc-alpha" Simiar to raise (BZ #15368), pthread_kill is also defined as async-signal-safe (POSIX.1-2008 TC1). However, similar to raise it has the same issues relating to signal handling. Different than raise, all the signal are blocked so it would be possible to implement pthread_cancel (which also should be async-cancel safe). Checked on x86_64-linux-gnu. --- nptl/pthread_kill.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/nptl/pthread_kill.c b/nptl/pthread_kill.c index 7ef68d1572..c547c5fe58 100644 --- a/nptl/pthread_kill.c +++ b/nptl/pthread_kill.c @@ -36,11 +36,17 @@ __pthread_kill (pthread_t threadid, int signo) /* Not a valid thread handle. */ return ESRCH; + sigset_t set; + __libc_signal_block_all (&set); + /* We have a special syscall to do the work. */ pid_t pid = __getpid (); int val = INTERNAL_SYSCALL_CALL (tgkill, pid, tid, signo); - return (INTERNAL_SYSCALL_ERROR_P (val) - ? INTERNAL_SYSCALL_ERRNO (val) : 0); + val = (INTERNAL_SYSCALL_ERROR_P (val) ? INTERNAL_SYSCALL_ERRNO (val) : 0); + + __libc_signal_restore_set (&set); + + return val; } strong_alias (__pthread_kill, pthread_kill) From patchwork Fri Dec 4 18:09:42 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adhemerval Zanella X-Patchwork-Id: 41311 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 136823982436; Fri, 4 Dec 2020 18:10:01 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 136823982436 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1607105401; bh=z2PuZZyF52PbcV1T1SVY5r3C1jVugGfL/3wjbDSHDbM=; h=To:Subject:Date:In-Reply-To:References:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc: From; b=c2tw2TzKGNhzKmbLK6ElJnSP6BvDQLXw3713WLhjUIYnB6fmd0i966mjOEOR+ivrQ b2O6ukv1Uhcy5BpRdwDzP6lyalbsOXUqhMFdAFAN4sh7cZOeixDY1mKEoagyIuf5Ux txuSplp25mwj17Hk8kaBJl6q3b221dGf5jqvbztI= X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-qk1-x742.google.com (mail-qk1-x742.google.com [IPv6:2607:f8b0:4864:20::742]) by sourceware.org (Postfix) with ESMTPS id 1E3D0398242C for ; Fri, 4 Dec 2020 18:09:57 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 1E3D0398242C Received: by mail-qk1-x742.google.com with SMTP id x25so6286216qkj.3 for ; Fri, 04 Dec 2020 10:09:57 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=z2PuZZyF52PbcV1T1SVY5r3C1jVugGfL/3wjbDSHDbM=; b=M/Yj0XEYZr38JZ+Iqprm3lMcCCqEKZEJ3aD7/ItStu7TQGER1f46F/QDt+5Cqw0F1y VnetTJnWLz1seJbZXMykObrp1zmkVcdSHLveTcMjkPvWw53cr/BRUTvcKwrbt+v4CAFq C08kK5QDkrQxOLu7yDR/QrlWn0OcfHyaW77Jme9dz6ojAZtfwT4sJJ4PdLsWoi+KH/gD ek/fjoeuItrVcqOOEQhOjCaN7IU01uDj0hTAtuBis7Ow7BuE5m64It4KC015tlQULekp PSZjYb4Fi+TPkRQQUDcbp6PCZMWOFngLeCONmhXgIxmJnF53OLWwDmOVyX/mzlDq9IQe xqBg== X-Gm-Message-State: AOAM530/w3poYTBpPr/fbmI5Iz/RQfwp0k/hARvFjdF1Fe3syNH2Rc9L iXezcSX1+5Yofu+qhN8TV3DhFZRSYLg6gw== X-Google-Smtp-Source: ABdhPJy6dJ5sO7MmfTaTWPi6J303emqhpJLGrgvkO6L2uRNnsrqjPSwXH8xXgEx8moN9QJXg13rVWw== X-Received: by 2002:ae9:f816:: with SMTP id x22mr10084283qkh.291.1607105396225; Fri, 04 Dec 2020 10:09:56 -0800 (PST) Received: from localhost.localdomain ([177.194.48.209]) by smtp.googlemail.com with ESMTPSA id b33sm6179827qta.62.2020.12.04.10.09.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 04 Dec 2020 10:09:55 -0800 (PST) To: libc-alpha@sourceware.org Subject: [PATCH 4/6] nptl: Initialize tid earlier Date: Fri, 4 Dec 2020 15:09:42 -0300 Message-Id: <20201204180944.3774769-4-adhemerval.zanella@linaro.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201204180944.3774769-1-adhemerval.zanella@linaro.org> References: <20201204180944.3774769-1-adhemerval.zanella@linaro.org> MIME-Version: 1.0 X-Spam-Status: No, score=-13.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Adhemerval Zanella via Libc-alpha From: Adhemerval Zanella Reply-To: Adhemerval Zanella Cc: Florian Weimer Errors-To: libc-alpha-bounces@sourceware.org Sender: "Libc-alpha" It sets the PD tid value as once pthread is initialized, the idea is to allow raise being implemented by pthread_kill and avoid a gettid call. Checked on x86_64-linux-gnu. --- csu/libc-tls.c | 3 +++ elf/rtld.c | 3 +++ nptl/nptl-init.c | 5 ++--- {nptl => sysdeps/htl}/pthread-pids.h | 13 +++---------- sysdeps/{unix/sysv/linux => nptl}/pthread-pids.h | 11 +++++++---- 5 files changed, 18 insertions(+), 17 deletions(-) rename {nptl => sysdeps/htl}/pthread-pids.h (61%) rename sysdeps/{unix/sysv/linux => nptl}/pthread-pids.h (70%) diff --git a/csu/libc-tls.c b/csu/libc-tls.c index c3589f0a7d..54fd085420 100644 --- a/csu/libc-tls.c +++ b/csu/libc-tls.c @@ -25,6 +25,7 @@ #include #include #include +#include #ifdef SHARED #error makefile bug, this file is for static only @@ -219,4 +220,6 @@ __libc_setup_tls (void) #endif init_static_tls (memsz, MAX (TLS_TCB_ALIGN, max_align)); + + pthread_initialize_pids (THREAD_SELF); } diff --git a/elf/rtld.c b/elf/rtld.c index c4ffc8d4b7..d01ba55a57 100644 --- a/elf/rtld.c +++ b/elf/rtld.c @@ -49,6 +49,7 @@ #include #include #include +#include #include @@ -805,6 +806,8 @@ cannot allocate TLS data structures for initial thread\n"); #endif tls_init_tp_called = true; + pthread_initialize_pids (THREAD_SELF); + return tcbp; } diff --git a/nptl/nptl-init.c b/nptl/nptl-init.c index 53b817715d..489023dee6 100644 --- a/nptl/nptl-init.c +++ b/nptl/nptl-init.c @@ -36,7 +36,6 @@ #include #include #include -#include #include #ifndef TLS_MULTIPLE_THREADS_IN_TCB @@ -225,9 +224,9 @@ static bool __nptl_initial_report_events __attribute_used__; void __pthread_initialize_minimal_internal (void) { - /* Minimal initialization of the thread descriptor. */ + /* Minimal initialization of the thread descriptor. + pd->tid was set during TLS initialization. */ struct pthread *pd = THREAD_SELF; - __pthread_initialize_pids (pd); THREAD_SETMEM (pd, specific[0], &pd->specific_1stblock[0]); THREAD_SETMEM (pd, user_stack, true); diff --git a/nptl/pthread-pids.h b/sysdeps/htl/pthread-pids.h similarity index 61% rename from nptl/pthread-pids.h rename to sysdeps/htl/pthread-pids.h index b2a8349d0e..54c9cbca2e 100644 --- a/nptl/pthread-pids.h +++ b/sysdeps/htl/pthread-pids.h @@ -1,5 +1,5 @@ -/* Initialize pid and tid fields of struct pthread. Stub version. - Copyright (C) 2015-2020 Free Software Foundation, Inc. +/* Initialize pid and tid fields of struct pthread. Hurd version. + Copyright (C) 2020 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -16,14 +16,7 @@ License along with the GNU C Library; if not, see . */ -#include - -/* Initialize PD->pid and PD->tid for the initial thread. If there is - setup required to arrange that __exit_thread causes PD->tid to be - cleared and futex-woken, then this function should do that as well. */ static inline void -__pthread_initialize_pids (struct pthread *pd) +pthread_initialize_pids (tcbhead_t *pd) { -#error "sysdeps pthread-pids.h file required" - pd->pid = pd->tid = -1; } diff --git a/sysdeps/unix/sysv/linux/pthread-pids.h b/sysdeps/nptl/pthread-pids.h similarity index 70% rename from sysdeps/unix/sysv/linux/pthread-pids.h rename to sysdeps/nptl/pthread-pids.h index 0b8ca4ec06..32fb2d937d 100644 --- a/sysdeps/unix/sysv/linux/pthread-pids.h +++ b/sysdeps/nptl/pthread-pids.h @@ -16,14 +16,17 @@ License along with the GNU C Library; if not, see . */ -#include #include -/* Initialize PD->pid and PD->tid for the initial thread. If there is - setup required to arrange that __exit_thread causes PD->tid to be +/* Initialize only as much of the initial thread's descriptor as is necessary + even when libpthread is not loaded. More will be done by + __pthread_initialize_minimal if libpthread is loaded. This needs to happen + before anything that could possibly call raise, but cannot happen before + TLS is initialized. + If there is setup required to that __exit_thread causes PD->tid to be cleared and futex-woken, then this function should do that as well. */ static inline void -__pthread_initialize_pids (struct pthread *pd) +pthread_initialize_pids (struct pthread *pd) { pd->tid = INTERNAL_SYSCALL_CALL (set_tid_address, &pd->tid); } From patchwork Fri Dec 4 18:09:43 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adhemerval Zanella X-Patchwork-Id: 41312 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 9CF923982414; Fri, 4 Dec 2020 18:10:03 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 9CF923982414 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1607105403; bh=CxnTxVrXvyW5+OuuSoxLEOyuQVB7gKIhYymWq8s8Ez0=; h=To:Subject:Date:In-Reply-To:References:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc: From; b=cvc4HNvq6iKf9iXp0WTJ8aAIEZSrVjw8mXhVjnTKAQszuAcWjSWblVR8WHZHmfZAa Ht6TS94EqMFLCM/NtoO6BryzEf+cwFah+QlGVNAXCDLpsw4jOYzSWu4h2GHTuKm3ei +wZfRYqrLRfNZPTAvjH6n3DFLoHV9sgDUv/Yu9YU= X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-qt1-x841.google.com (mail-qt1-x841.google.com [IPv6:2607:f8b0:4864:20::841]) by sourceware.org (Postfix) with ESMTPS id B5B803982415 for ; Fri, 4 Dec 2020 18:09:58 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org B5B803982415 Received: by mail-qt1-x841.google.com with SMTP id p12so4567670qtp.7 for ; Fri, 04 Dec 2020 10:09:58 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=CxnTxVrXvyW5+OuuSoxLEOyuQVB7gKIhYymWq8s8Ez0=; b=JmPI3AjZijBKZX21BXC4jJKaLmJs+/WCnsLfycYdJqdfucEGJPxZYrn5ZIzAy5feMt 7ZbDayoMs11fT1syENusJzfQoVvsMP4PuST7/BPbiXN/pGNXt4zHsbi4RG/CFUEZJMMN vp1sCLxtFZ2DDzAclbbLz/pPLaUD4Y8ZugXR1CEFng+5lkAN5CP3/H7l6E1vTaOTUJld lCMqjQgrurxOgEycH4vqy9KBupf+df6D+ibYFo8/vHdwIyyYHVSZLe9o4ooEHCDox7Uu /RxFhwEqMnXOE399n0SpFQsGl9Oh94E/4V+XtPvf5lDl1mzhXDociSJq6tGLUROdNXAu 8d4Q== X-Gm-Message-State: AOAM531Ph0LSWLm7kL7yPpZFgeZCG+4+r6RpxJwoZOfHlBvVqsSKMwX6 OWVeCuFunJhSIySjqaGz9NtY7Bg/r7gDcw== X-Google-Smtp-Source: ABdhPJxbSD0axGGp+DCQcy8OLU+VkQKCs++A9NYCUdn6ssIBSRF/6UtH/aBjEch+O40ssAryNmTsPA== X-Received: by 2002:ac8:668c:: with SMTP id d12mr10588867qtp.352.1607105397918; Fri, 04 Dec 2020 10:09:57 -0800 (PST) Received: from localhost.localdomain ([177.194.48.209]) by smtp.googlemail.com with ESMTPSA id b33sm6179827qta.62.2020.12.04.10.09.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 04 Dec 2020 10:09:57 -0800 (PST) To: libc-alpha@sourceware.org Subject: [PATCH 5/6] nptl: Implement raise with pthread_kill Date: Fri, 4 Dec 2020 15:09:43 -0300 Message-Id: <20201204180944.3774769-5-adhemerval.zanella@linaro.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201204180944.3774769-1-adhemerval.zanella@linaro.org> References: <20201204180944.3774769-1-adhemerval.zanella@linaro.org> MIME-Version: 1.0 X-Spam-Status: No, score=-13.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Adhemerval Zanella via Libc-alpha From: Adhemerval Zanella Reply-To: Adhemerval Zanella Cc: Florian Weimer Errors-To: libc-alpha-bounces@sourceware.org Sender: "Libc-alpha" The internal __pthread_kill_internal symbol has an extra argument that specified if all signal or just application ones should be blocked (raise can not be used with SIGCANCEL or SIGTIMER, so there it no need to block them). Checked on x86_64-linux-gnu. --- nptl/Makefile | 1 + nptl/Versions | 1 + nptl/pt-raise.c | 11 +----- nptl/pthreadP.h | 3 ++ nptl/pthread_kill.c | 28 +-------------- nptl/pthread_kill_internal.c | 56 ++++++++++++++++++++++++++++++ sysdeps/posix/raise.c | 10 ++++-- sysdeps/unix/sysv/linux/pt-raise.c | 20 ----------- sysdeps/unix/sysv/linux/raise.c | 52 --------------------------- 9 files changed, 71 insertions(+), 111 deletions(-) create mode 100644 nptl/pthread_kill_internal.c delete mode 100644 sysdeps/unix/sysv/linux/pt-raise.c delete mode 100644 sysdeps/unix/sysv/linux/raise.c diff --git a/nptl/Makefile b/nptl/Makefile index 3f6e77f63f..424b96656a 100644 --- a/nptl/Makefile +++ b/nptl/Makefile @@ -66,6 +66,7 @@ routines = \ pthread_getattr_np \ pthread_getschedparam \ pthread_kill \ + pthread_kill_internal \ pthread_self \ pthread_setschedparam \ pthread_sigmask \ diff --git a/nptl/Versions b/nptl/Versions index 7cfe39a91c..39578ef4e6 100644 --- a/nptl/Versions +++ b/nptl/Versions @@ -66,6 +66,7 @@ libc { __pthread_attr_copy; __pthread_getattr_default_np; __pthread_attr_setsigmask_internal; + __pthread_kill_internal; } } diff --git a/nptl/pt-raise.c b/nptl/pt-raise.c index 069b33a86e..286a9f686a 100644 --- a/nptl/pt-raise.c +++ b/nptl/pt-raise.c @@ -17,13 +17,4 @@ License along with the GNU C Library; if not, see . */ -#include -#include - - -int -raise (int sig) -{ - /* This is what POSIX says must happen. */ - return pthread_kill (pthread_self (), sig); -} +#include "raise.c" diff --git a/nptl/pthreadP.h b/nptl/pthreadP.h index a7510f9f63..2f34ac1ab9 100644 --- a/nptl/pthreadP.h +++ b/nptl/pthreadP.h @@ -526,6 +526,9 @@ extern int __pthread_equal (pthread_t thread1, pthread_t thread2); extern int __pthread_detach (pthread_t th); extern int __pthread_cancel (pthread_t th); extern int __pthread_kill (pthread_t threadid, int signo); +extern int __pthread_kill_internal (pthread_t threadif, int signo, + bool block_all); +libc_hidden_proto (__pthread_kill_internal) extern void __pthread_exit (void *value) __attribute__ ((__noreturn__)); extern int __pthread_join (pthread_t threadid, void **thread_return); extern int __pthread_setcanceltype (int type, int *oldtype); diff --git a/nptl/pthread_kill.c b/nptl/pthread_kill.c index c547c5fe58..d114cbfca6 100644 --- a/nptl/pthread_kill.c +++ b/nptl/pthread_kill.c @@ -16,37 +16,11 @@ License along with the GNU C Library; if not, see . */ -#include #include int __pthread_kill (pthread_t threadid, int signo) { - /* Disallow sending the signal we use for cancellation, timers, - for the setxid implementation. */ - if (__is_internal_signal (signo)) - return EINVAL; - - /* Force load of pd->tid into local variable or register. Otherwise - if a thread exits between ESRCH test and tgkill, we might return - EINVAL, because pd->tid would be cleared by the kernel. */ - struct pthread *pd = (struct pthread *) threadid; - pid_t tid = atomic_forced_read (pd->tid); - if (__glibc_unlikely (tid <= 0)) - /* Not a valid thread handle. */ - return ESRCH; - - sigset_t set; - __libc_signal_block_all (&set); - - /* We have a special syscall to do the work. */ - pid_t pid = __getpid (); - - int val = INTERNAL_SYSCALL_CALL (tgkill, pid, tid, signo); - val = (INTERNAL_SYSCALL_ERROR_P (val) ? INTERNAL_SYSCALL_ERRNO (val) : 0); - - __libc_signal_restore_set (&set); - - return val; + return __pthread_kill_internal (threadid, signo, true); } strong_alias (__pthread_kill, pthread_kill) diff --git a/nptl/pthread_kill_internal.c b/nptl/pthread_kill_internal.c new file mode 100644 index 0000000000..46a47650a1 --- /dev/null +++ b/nptl/pthread_kill_internal.c @@ -0,0 +1,56 @@ +/* Common implementation for raise/pthread_kill. Linux version. + Copyright (C) 2020 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#include +#include + +int +__pthread_kill_internal (pthread_t threadid, int signo, bool block_all) +{ + /* Disallow sending the signal we use for cancellation, timers, + for the setxid implementation. */ + if (__is_internal_signal (signo)) + return EINVAL; + + /* Force load of pd->tid into local variable or register. Otherwise + if a thread exits between ESRCH test and tgkill, we might return + EINVAL, because pd->tid would be cleared by the kernel. */ + struct pthread *pd = (struct pthread *) threadid; + pid_t tid = atomic_forced_read (pd->tid); + if (__glibc_unlikely (tid <= 0)) + /* Not a valid thread handle. */ + return ESRCH; + + sigset_t set; + if (block_all) + __libc_signal_block_all (&set); + else + __libc_signal_block_app (&set); + + /* We have a special syscall to do the work. */ + pid_t pid = __getpid (); + + int val = INTERNAL_SYSCALL_CALL (tgkill, pid, tid, signo); + val = (INTERNAL_SYSCALL_ERROR_P (val) ? INTERNAL_SYSCALL_ERRNO (val) : 0); + + __libc_signal_restore_set (&set); + + return val; +} +libc_hidden_def (__pthread_kill_internal) + diff --git a/sysdeps/posix/raise.c b/sysdeps/posix/raise.c index 32cb108f0b..8a3ea95b3e 100644 --- a/sysdeps/posix/raise.c +++ b/sysdeps/posix/raise.c @@ -16,13 +16,19 @@ . */ #include -#include +#include /* Raise the signal SIG. */ int raise (int sig) { - return __kill (__getpid (), sig); + int r = __pthread_kill_internal ((pthread_t) THREAD_SELF, sig, false); + if (r != 0) + { + __set_errno (r); + r = -1; + } + return r; } libc_hidden_def (raise) weak_alias (raise, gsignal) diff --git a/sysdeps/unix/sysv/linux/pt-raise.c b/sysdeps/unix/sysv/linux/pt-raise.c deleted file mode 100644 index 0c8246b0cc..0000000000 --- a/sysdeps/unix/sysv/linux/pt-raise.c +++ /dev/null @@ -1,20 +0,0 @@ -/* ISO C raise function for libpthread. - Copyright (C) 2002-2020 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2002. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#include diff --git a/sysdeps/unix/sysv/linux/raise.c b/sysdeps/unix/sysv/linux/raise.c deleted file mode 100644 index 3b90ae1d55..0000000000 --- a/sysdeps/unix/sysv/linux/raise.c +++ /dev/null @@ -1,52 +0,0 @@ -/* Copyright (C) 2002-2020 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2002. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#include -#include -#include -#include -#include -#include - -int -raise (int sig) -{ - /* rt_sigprocmask may fail if: - - 1. sigsetsize != sizeof (sigset_t) (EINVAL) - 2. a failure in copy from/to user space (EFAULT) - 3. an invalid 'how' operation (EINVAL) - - The first case is already handle in glibc syscall call by using the arch - defined _NSIG. Second case is handled by using a stack allocated mask. - The last one should be handled by the block/unblock functions. */ - - sigset_t set; - __libc_signal_block_app (&set); - - pid_t pid = INTERNAL_SYSCALL_CALL (getpid); - pid_t tid = INTERNAL_SYSCALL_CALL (gettid); - - int ret = INLINE_SYSCALL_CALL (tgkill, pid, tid, sig); - - __libc_signal_restore_set (&set); - - return ret; -} -libc_hidden_def (raise) -weak_alias (raise, gsignal) From patchwork Fri Dec 4 18:09:44 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adhemerval Zanella X-Patchwork-Id: 41313 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 451E13982431; Fri, 4 Dec 2020 18:10:05 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 451E13982431 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1607105405; bh=cIMVv3ft8Dy9f6vAa8b9QqrAFjNHeML6HzmueoQa2Pg=; h=To:Subject:Date:In-Reply-To:References:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc: From; b=XL1wEG1x31NpMBCX8x3aL3ms3TOqY4VIXBTaJfnxXDJO7j1WUgkG2VTZVVwnLUy+5 CR9tUpUMgOZU8r/ftlXQbGwnYc9PZ/iYeAm8cB/7LwI5uLH7cuQ58aCEmjUaJ9EGJv VNh1SVct73Ne0/9gTJeXEfrv9Y0E2Tchj/xWPQ7M= X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-qt1-x82c.google.com (mail-qt1-x82c.google.com [IPv6:2607:f8b0:4864:20::82c]) by sourceware.org (Postfix) with ESMTPS id A78D33982431 for ; Fri, 4 Dec 2020 18:10:00 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org A78D33982431 Received: by mail-qt1-x82c.google.com with SMTP id v11so4539333qtq.12 for ; Fri, 04 Dec 2020 10:10:00 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=cIMVv3ft8Dy9f6vAa8b9QqrAFjNHeML6HzmueoQa2Pg=; b=PtfGjW29aRvBO0SmVD2RN2gnfvCVHAjHm4UowrRmXDiynoNzePEcwSZtYomaA1LYx5 TKSTrAhGPUOucoJQxLjzpZcPCWTep3RyY2yoJAYerE2V9sIXrMcf3c98j/RoarvcziE/ Y6BbY5uIesVXOFxAssGselwBsClLa9K57mZdKTo0hChjMjgEbYvNzHzwtS+X+Pbnm1Jh BrlbiPM9Y8gLBTDiB+frktudbiveoFgP0nSon+H3iD126WqP5tPpDhN71VK9BzxD8po0 1e3QA9tLBqOcrY6Wos4uBY8kUMHtfjzUFC1b7TPerYb8PsxT+weSst9jEVtYrIW7yPmi shAQ== X-Gm-Message-State: AOAM531RnoG8aMMAOAhzxeDPUugA3qQENxigaGhlmSr8uEF75etcZEkV G86phaCUf7gWnb6WPn5OCPhnFHow7T2T3Q== X-Google-Smtp-Source: ABdhPJzoe+3BcmxEfMLB71tawywxDealUmvkqFewS3KwPeAmEGQweITtFn7q3YE3f4UHg61vF+HALw== X-Received: by 2002:ac8:5653:: with SMTP id 19mr11102885qtt.136.1607105399741; Fri, 04 Dec 2020 10:09:59 -0800 (PST) Received: from localhost.localdomain ([177.194.48.209]) by smtp.googlemail.com with ESMTPSA id b33sm6179827qta.62.2020.12.04.10.09.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 04 Dec 2020 10:09:59 -0800 (PST) To: libc-alpha@sourceware.org Subject: [PATCH 6/6] nptl: Remove pthread raise implementation Date: Fri, 4 Dec 2020 15:09:44 -0300 Message-Id: <20201204180944.3774769-6-adhemerval.zanella@linaro.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201204180944.3774769-1-adhemerval.zanella@linaro.org> References: <20201204180944.3774769-1-adhemerval.zanella@linaro.org> MIME-Version: 1.0 X-Spam-Status: No, score=-13.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Adhemerval Zanella via Libc-alpha From: Adhemerval Zanella Reply-To: Adhemerval Zanella Cc: Florian Weimer Errors-To: libc-alpha-bounces@sourceware.org Sender: "Libc-alpha" With raise being implemented on basis of pthread_kill, there is no differente between libpthread and libc. Checked on x86_64-linux-gnu. --- nptl/Makefile | 2 +- nptl/pt-raise.c | 20 ------------------- nptl/pthread_kill_internal.c | 1 - .../sysv/linux/aarch64/libpthread.abilist | 1 - .../unix/sysv/linux/alpha/libpthread.abilist | 1 - .../unix/sysv/linux/arc/libpthread.abilist | 1 - .../unix/sysv/linux/arm/be/libpthread.abilist | 1 - .../unix/sysv/linux/arm/le/libpthread.abilist | 1 - .../unix/sysv/linux/csky/libpthread.abilist | 1 - .../unix/sysv/linux/hppa/libpthread.abilist | 1 - .../unix/sysv/linux/i386/libpthread.abilist | 1 - .../unix/sysv/linux/ia64/libpthread.abilist | 1 - .../linux/m68k/coldfire/libpthread.abilist | 1 - .../sysv/linux/m68k/m680x0/libpthread.abilist | 1 - .../linux/microblaze/be/libpthread.abilist | 1 - .../linux/microblaze/le/libpthread.abilist | 1 - .../sysv/linux/mips/mips32/libpthread.abilist | 1 - .../sysv/linux/mips/mips64/libpthread.abilist | 1 - .../unix/sysv/linux/nios2/libpthread.abilist | 1 - .../powerpc/powerpc32/libpthread.abilist | 1 - .../powerpc/powerpc64/be/libpthread.abilist | 1 - .../powerpc/powerpc64/le/libpthread.abilist | 1 - .../sysv/linux/riscv/rv32/libpthread.abilist | 1 - .../sysv/linux/riscv/rv64/libpthread.abilist | 1 - .../linux/s390/s390-32/libpthread.abilist | 1 - .../linux/s390/s390-64/libpthread.abilist | 1 - .../unix/sysv/linux/sh/be/libpthread.abilist | 1 - .../unix/sysv/linux/sh/le/libpthread.abilist | 1 - .../linux/sparc/sparc32/libpthread.abilist | 1 - .../linux/sparc/sparc64/libpthread.abilist | 1 - .../sysv/linux/x86_64/64/libpthread.abilist | 1 - .../sysv/linux/x86_64/x32/libpthread.abilist | 1 - 32 files changed, 1 insertion(+), 51 deletions(-) delete mode 100644 nptl/pt-raise.c diff --git a/nptl/Makefile b/nptl/Makefile index 424b96656a..c29dcd2b52 100644 --- a/nptl/Makefile +++ b/nptl/Makefile @@ -151,7 +151,7 @@ libpthread-routines = nptl-init nptlfreeres vars events version pt-interp \ lowlevellock \ pt-fork pt-fcntl \ $(pthread-compat-wrappers) \ - pt-raise pt-system \ + pt-system \ flockfile ftrylockfile funlockfile \ sigaction \ herrno res pt-allocrtsig \ diff --git a/nptl/pt-raise.c b/nptl/pt-raise.c deleted file mode 100644 index 286a9f686a..0000000000 --- a/nptl/pt-raise.c +++ /dev/null @@ -1,20 +0,0 @@ -/* ISO C raise function for libpthread. - Copyright (C) 2002-2020 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2002. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#include "raise.c" diff --git a/nptl/pthread_kill_internal.c b/nptl/pthread_kill_internal.c index 46a47650a1..a81fe2db86 100644 --- a/nptl/pthread_kill_internal.c +++ b/nptl/pthread_kill_internal.c @@ -53,4 +53,3 @@ __pthread_kill_internal (pthread_t threadid, int signo, bool block_all) return val; } libc_hidden_def (__pthread_kill_internal) - diff --git a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist index 18f2b38dca..8674d82bad 100644 --- a/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/aarch64/libpthread.abilist @@ -164,7 +164,6 @@ GLIBC_2.17 pthread_tryjoin_np F GLIBC_2.17 pthread_yield F GLIBC_2.17 pwrite F GLIBC_2.17 pwrite64 F -GLIBC_2.17 raise F GLIBC_2.17 read F GLIBC_2.17 recv F GLIBC_2.17 recvfrom F diff --git a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist index a05379d8d7..37e2e498ba 100644 --- a/sysdeps/unix/sysv/linux/alpha/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/alpha/libpthread.abilist @@ -71,7 +71,6 @@ GLIBC_2.0 pthread_setcancelstate F GLIBC_2.0 pthread_setcanceltype F GLIBC_2.0 pthread_setspecific F GLIBC_2.0 pthread_testcancel F -GLIBC_2.0 raise F GLIBC_2.0 read F GLIBC_2.0 recv F GLIBC_2.0 recvfrom F diff --git a/sysdeps/unix/sysv/linux/arc/libpthread.abilist b/sysdeps/unix/sysv/linux/arc/libpthread.abilist index 9a5a035490..85cdb87513 100644 --- a/sysdeps/unix/sysv/linux/arc/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/arc/libpthread.abilist @@ -179,7 +179,6 @@ GLIBC_2.32 pthread_tryjoin_np F GLIBC_2.32 pthread_yield F GLIBC_2.32 pwrite F GLIBC_2.32 pwrite64 F -GLIBC_2.32 raise F GLIBC_2.32 read F GLIBC_2.32 recv F GLIBC_2.32 recvfrom F diff --git a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist index fc7343bae9..e29ecce521 100644 --- a/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/arm/be/libpthread.abilist @@ -193,7 +193,6 @@ GLIBC_2.4 pthread_tryjoin_np F GLIBC_2.4 pthread_yield F GLIBC_2.4 pwrite F GLIBC_2.4 pwrite64 F -GLIBC_2.4 raise F GLIBC_2.4 read F GLIBC_2.4 recv F GLIBC_2.4 recvfrom F diff --git a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist index fc7343bae9..e29ecce521 100644 --- a/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/arm/le/libpthread.abilist @@ -193,7 +193,6 @@ GLIBC_2.4 pthread_tryjoin_np F GLIBC_2.4 pthread_yield F GLIBC_2.4 pwrite F GLIBC_2.4 pwrite64 F -GLIBC_2.4 raise F GLIBC_2.4 read F GLIBC_2.4 recv F GLIBC_2.4 recvfrom F diff --git a/sysdeps/unix/sysv/linux/csky/libpthread.abilist b/sysdeps/unix/sysv/linux/csky/libpthread.abilist index d82933bab8..5975349ad0 100644 --- a/sysdeps/unix/sysv/linux/csky/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/csky/libpthread.abilist @@ -174,7 +174,6 @@ GLIBC_2.29 pthread_tryjoin_np F GLIBC_2.29 pthread_yield F GLIBC_2.29 pwrite F GLIBC_2.29 pwrite64 F -GLIBC_2.29 raise F GLIBC_2.29 read F GLIBC_2.29 recv F GLIBC_2.29 recvfrom F diff --git a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist index 041f965447..f16ca227ab 100644 --- a/sysdeps/unix/sysv/linux/hppa/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/hppa/libpthread.abilist @@ -144,7 +144,6 @@ GLIBC_2.2 pthread_testcancel F GLIBC_2.2 pthread_yield F GLIBC_2.2 pwrite F GLIBC_2.2 pwrite64 F -GLIBC_2.2 raise F GLIBC_2.2 read F GLIBC_2.2 recv F GLIBC_2.2 recvfrom F diff --git a/sysdeps/unix/sysv/linux/i386/libpthread.abilist b/sysdeps/unix/sysv/linux/i386/libpthread.abilist index 8875b14ad1..c3e8cbf284 100644 --- a/sysdeps/unix/sysv/linux/i386/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/i386/libpthread.abilist @@ -71,7 +71,6 @@ GLIBC_2.0 pthread_setcancelstate F GLIBC_2.0 pthread_setcanceltype F GLIBC_2.0 pthread_setspecific F GLIBC_2.0 pthread_testcancel F -GLIBC_2.0 raise F GLIBC_2.0 read F GLIBC_2.0 recv F GLIBC_2.0 recvfrom F diff --git a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist index 998d7d2d99..d249bf0bb1 100644 --- a/sysdeps/unix/sysv/linux/ia64/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/ia64/libpthread.abilist @@ -144,7 +144,6 @@ GLIBC_2.2 pthread_testcancel F GLIBC_2.2 pthread_yield F GLIBC_2.2 pwrite F GLIBC_2.2 pwrite64 F -GLIBC_2.2 raise F GLIBC_2.2 read F GLIBC_2.2 recv F GLIBC_2.2 recvfrom F diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist index fc7343bae9..e29ecce521 100644 --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist @@ -193,7 +193,6 @@ GLIBC_2.4 pthread_tryjoin_np F GLIBC_2.4 pthread_yield F GLIBC_2.4 pwrite F GLIBC_2.4 pwrite64 F -GLIBC_2.4 raise F GLIBC_2.4 read F GLIBC_2.4 recv F GLIBC_2.4 recvfrom F diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist index 8875b14ad1..c3e8cbf284 100644 --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist @@ -71,7 +71,6 @@ GLIBC_2.0 pthread_setcancelstate F GLIBC_2.0 pthread_setcanceltype F GLIBC_2.0 pthread_setspecific F GLIBC_2.0 pthread_testcancel F -GLIBC_2.0 raise F GLIBC_2.0 read F GLIBC_2.0 recv F GLIBC_2.0 recvfrom F diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist index 6a26159353..a260eaf1ad 100644 --- a/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/be/libpthread.abilist @@ -166,7 +166,6 @@ GLIBC_2.18 pthread_tryjoin_np F GLIBC_2.18 pthread_yield F GLIBC_2.18 pwrite F GLIBC_2.18 pwrite64 F -GLIBC_2.18 raise F GLIBC_2.18 read F GLIBC_2.18 recv F GLIBC_2.18 recvfrom F diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist index 6a26159353..a260eaf1ad 100644 --- a/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/le/libpthread.abilist @@ -166,7 +166,6 @@ GLIBC_2.18 pthread_tryjoin_np F GLIBC_2.18 pthread_yield F GLIBC_2.18 pwrite F GLIBC_2.18 pwrite64 F -GLIBC_2.18 raise F GLIBC_2.18 read F GLIBC_2.18 recv F GLIBC_2.18 recvfrom F diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist index 42112cee49..55b42b617c 100644 --- a/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist @@ -71,7 +71,6 @@ GLIBC_2.0 pthread_setcancelstate F GLIBC_2.0 pthread_setcanceltype F GLIBC_2.0 pthread_setspecific F GLIBC_2.0 pthread_testcancel F -GLIBC_2.0 raise F GLIBC_2.0 read F GLIBC_2.0 recv F GLIBC_2.0 recvfrom F diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist index 42112cee49..55b42b617c 100644 --- a/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist @@ -71,7 +71,6 @@ GLIBC_2.0 pthread_setcancelstate F GLIBC_2.0 pthread_setcanceltype F GLIBC_2.0 pthread_setspecific F GLIBC_2.0 pthread_testcancel F -GLIBC_2.0 raise F GLIBC_2.0 read F GLIBC_2.0 recv F GLIBC_2.0 recvfrom F diff --git a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist index b1061cdbdd..5d5c5aab44 100644 --- a/sysdeps/unix/sysv/linux/nios2/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/nios2/libpthread.abilist @@ -166,7 +166,6 @@ GLIBC_2.21 pthread_tryjoin_np F GLIBC_2.21 pthread_yield F GLIBC_2.21 pwrite F GLIBC_2.21 pwrite64 F -GLIBC_2.21 raise F GLIBC_2.21 read F GLIBC_2.21 recv F GLIBC_2.21 recvfrom F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist index abb726e354..e9b0739340 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist @@ -71,7 +71,6 @@ GLIBC_2.0 pthread_setcancelstate F GLIBC_2.0 pthread_setcanceltype F GLIBC_2.0 pthread_setspecific F GLIBC_2.0 pthread_testcancel F -GLIBC_2.0 raise F GLIBC_2.0 read F GLIBC_2.0 recv F GLIBC_2.0 recvfrom F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist index 7edba91681..0faf484806 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist @@ -164,7 +164,6 @@ GLIBC_2.3 pthread_testcancel F GLIBC_2.3 pthread_yield F GLIBC_2.3 pwrite F GLIBC_2.3 pwrite64 F -GLIBC_2.3 raise F GLIBC_2.3 read F GLIBC_2.3 recv F GLIBC_2.3 recvfrom F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist index 18f2b38dca..8674d82bad 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist @@ -164,7 +164,6 @@ GLIBC_2.17 pthread_tryjoin_np F GLIBC_2.17 pthread_yield F GLIBC_2.17 pwrite F GLIBC_2.17 pwrite64 F -GLIBC_2.17 raise F GLIBC_2.17 read F GLIBC_2.17 recv F GLIBC_2.17 recvfrom F diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist index 0023fa95df..62a11c535a 100644 --- a/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/riscv/rv32/libpthread.abilist @@ -179,7 +179,6 @@ GLIBC_2.33 pthread_tryjoin_np F GLIBC_2.33 pthread_yield F GLIBC_2.33 pwrite F GLIBC_2.33 pwrite64 F -GLIBC_2.33 raise F GLIBC_2.33 read F GLIBC_2.33 recv F GLIBC_2.33 recvfrom F diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist index faeb8dd7b6..4628abce49 100644 --- a/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist @@ -163,7 +163,6 @@ GLIBC_2.27 pthread_tryjoin_np F GLIBC_2.27 pthread_yield F GLIBC_2.27 pwrite F GLIBC_2.27 pwrite64 F -GLIBC_2.27 raise F GLIBC_2.27 read F GLIBC_2.27 recv F GLIBC_2.27 recvfrom F diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist index 41f7d4371b..a02aafedbc 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist @@ -71,7 +71,6 @@ GLIBC_2.0 pthread_setcancelstate F GLIBC_2.0 pthread_setcanceltype F GLIBC_2.0 pthread_setspecific F GLIBC_2.0 pthread_testcancel F -GLIBC_2.0 raise F GLIBC_2.0 read F GLIBC_2.0 recv F GLIBC_2.0 recvfrom F diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist index dca95c3126..249dd16a6b 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist @@ -146,7 +146,6 @@ GLIBC_2.2 pthread_testcancel F GLIBC_2.2 pthread_yield F GLIBC_2.2 pwrite F GLIBC_2.2 pwrite64 F -GLIBC_2.2 raise F GLIBC_2.2 read F GLIBC_2.2 recv F GLIBC_2.2 recvfrom F diff --git a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist index 041f965447..f16ca227ab 100644 --- a/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/sh/be/libpthread.abilist @@ -144,7 +144,6 @@ GLIBC_2.2 pthread_testcancel F GLIBC_2.2 pthread_yield F GLIBC_2.2 pwrite F GLIBC_2.2 pwrite64 F -GLIBC_2.2 raise F GLIBC_2.2 read F GLIBC_2.2 recv F GLIBC_2.2 recvfrom F diff --git a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist index 041f965447..f16ca227ab 100644 --- a/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/sh/le/libpthread.abilist @@ -144,7 +144,6 @@ GLIBC_2.2 pthread_testcancel F GLIBC_2.2 pthread_yield F GLIBC_2.2 pwrite F GLIBC_2.2 pwrite64 F -GLIBC_2.2 raise F GLIBC_2.2 read F GLIBC_2.2 recv F GLIBC_2.2 recvfrom F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist index a05379d8d7..37e2e498ba 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist @@ -71,7 +71,6 @@ GLIBC_2.0 pthread_setcancelstate F GLIBC_2.0 pthread_setcanceltype F GLIBC_2.0 pthread_setspecific F GLIBC_2.0 pthread_testcancel F -GLIBC_2.0 raise F GLIBC_2.0 read F GLIBC_2.0 recv F GLIBC_2.0 recvfrom F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist index 998d7d2d99..d249bf0bb1 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist @@ -144,7 +144,6 @@ GLIBC_2.2 pthread_testcancel F GLIBC_2.2 pthread_yield F GLIBC_2.2 pwrite F GLIBC_2.2 pwrite64 F -GLIBC_2.2 raise F GLIBC_2.2 read F GLIBC_2.2 recv F GLIBC_2.2 recvfrom F diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist index 2a74e40f01..71390950d1 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist @@ -144,7 +144,6 @@ GLIBC_2.2.5 pthread_testcancel F GLIBC_2.2.5 pthread_yield F GLIBC_2.2.5 pwrite F GLIBC_2.2.5 pwrite64 F -GLIBC_2.2.5 raise F GLIBC_2.2.5 read F GLIBC_2.2.5 recv F GLIBC_2.2.5 recvfrom F diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist index 81f294c3e0..cd337846d9 100644 --- a/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist @@ -164,7 +164,6 @@ GLIBC_2.16 pthread_tryjoin_np F GLIBC_2.16 pthread_yield F GLIBC_2.16 pwrite F GLIBC_2.16 pwrite64 F -GLIBC_2.16 raise F GLIBC_2.16 read F GLIBC_2.16 recv F GLIBC_2.16 recvfrom F