From patchwork Fri Mar 19 20:29:00 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adhemerval Zanella X-Patchwork-Id: 42711 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 15687386F038; Fri, 19 Mar 2021 20:29:22 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 15687386F038 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1616185762; bh=Duj5Qfkk+JxNFdHZuoQU5CYiQpHB7scWIkuv5mczCVQ=; h=To:Subject:Date:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=wQDaOFvErM51vp5JwjOC3lont6FAehRjoF9h2DxiVSjxhOcg/x48mpQ0uss2K5H0S jjhVZjwoiqlLotApXp8QMlsNQhpnbStNKycoRJnv/8cKwqjJwQf2WoUMGpeCJT72sU j6up5l0bqXHDvx5mSbjp3qz9PkeSH6MHBzKBvkYY= X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-qk1-x734.google.com (mail-qk1-x734.google.com [IPv6:2607:f8b0:4864:20::734]) by sourceware.org (Postfix) with ESMTPS id 517283857C73 for ; Fri, 19 Mar 2021 20:29:19 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 517283857C73 Received: by mail-qk1-x734.google.com with SMTP id x14so4305753qki.10 for ; Fri, 19 Mar 2021 13:29:19 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:mime-version :content-transfer-encoding; bh=Duj5Qfkk+JxNFdHZuoQU5CYiQpHB7scWIkuv5mczCVQ=; b=YoiilX0SoHpGkqphPNqnHS2PM221lXsSp4sHTPbSMaxko1U2AbglWMEAziTLw6xp+S jYY1d4fJDMslZ5fVhRHuhlM3X3k7fH5l+eslBd3zximNuOYm8kXngVxhkgVWwV0dORa9 jkH2uk7BBt+hkEbsT5vk20EVBS21075in+UDEum3kYP+9gPpr9gc6RRMNl89UJdmRTqI E8JvWBqQK5E5nV7bTGIWns9utcZtfYJHT2IFqhW7j1JnB2o30iMsgGxdH+Wbkc+jLB3x rM5Vj22fFAXZEHDhpx6Z842nwwjhyNPHEcDOdb/cXnjFqwyQdmNZQnnjxoBFXdW+MXTN czCg== X-Gm-Message-State: AOAM532uta0HXUX5D5/uIaZfJxBrpBlwHOpJiSdrXdEDpJZexouvJsbf azV2LFhEuvxFBM2KRLaEjtE7hekxecYL40K8 X-Google-Smtp-Source: ABdhPJx2b1TzdbkuFnZADmBOFDNexzBAfGArYqKUa5TFw4zffrsTktK6mxHk6f5F9dVbwsB69U1e+A== X-Received: by 2002:a37:aac9:: with SMTP id t192mr401477qke.408.1616185758708; Fri, 19 Mar 2021 13:29:18 -0700 (PDT) Received: from localhost.localdomain ([177.194.48.209]) by smtp.googlemail.com with ESMTPSA id i25sm5259747qka.38.2021.03.19.13.29.17 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 19 Mar 2021 13:29:18 -0700 (PDT) To: libc-alpha@sourceware.org Subject: [PATCH v2 00/14] libpthread removal: pthread-compat-wrappers and other libc symbols Date: Fri, 19 Mar 2021 17:29:00 -0300 Message-Id: <20210319202914.2475530-1-adhemerval.zanella@linaro.org> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-Spam-Status: No, score=-7.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, 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 Errors-To: libc-alpha-bounces@sourceware.org Sender: "Libc-alpha" This patchse moves all missing the pthread-compat-wrappers symbols from libpthread plus some others that are already presented on libc (the pthread_kill was done to enable the raise removal). I based this version on top of Florian's 'Transparent multi-version symbol support' [1] so it can use compat_symbol without the strong_alias requirement. It has been tested on i686-linux-gnu and x86_64-linux-gnu, and built by build-many-glibcs.py for all ABIs that required abilist changes. Changes from v1 [2]: * Make libc version the default one for lseek, open, pread, and pwrite. * Make aarch64 and nios2 libpthread __send compat symbol. * Removed alpha specific implementation for pread and pwrite. * Renamed the commit message for msgrcv, msgsnd, and sigsupend. * Fixed the split pthread_kill abi addition. * Fixed the localplt.data for raise on arm. [1] https://patchwork.sourceware.org/project/glibc/list/?series=1881 [2] https://patchwork.sourceware.org/project/glibc/list/?series=1862 Adhemerval Zanella (14): Add OTHER_SHLIB_COMPAT nptl: Remove send from libpthread nptl: Remove lseek from libpthread nptl: Remove open from libpthread nptl: Remove pread from libpthread nptl: Remove pwrite from libpthread nptl: Remove msgsnd from pthread-compat-wrappers nptl: Remove msgrcv from pthread-compat-wrappers nptl: Remove sigsuspend from pthread-compat-wrappers nptl: Move pthread_kill to libc nptl: Remove pthread raise implementation nptl: Move sigaction to libc nptl: Remove __libc_allocate_rtsig, __libc_current_sigrtmax, and __libc_current_sigrtmin nptl: Remove unused rules include/shlib-compat.h | 9 ++++ include/unistd.h | 7 ++- nptl/Makefile | 32 +----------- nptl/Versions | 29 ++--------- nptl/pt-allocrtsig.c | 50 ------------------- nptl/pt-raise.c | 29 ----------- nptl/pthread_kill.c | 7 ++- nptl/sigaction.c | 33 ------------ signal/Versions | 3 ++ signal/allocrtsig.c | 9 +--- socket/Makefile | 1 + sysdeps/generic/internal-signals.h | 4 ++ sysdeps/mach/hurd/i386/ld.abilist | 2 - sysdeps/nptl/allocrtsig.c | 31 ------------ sysdeps/pthread/sem_open.c | 6 +-- sysdeps/unix/sysv/linux/aarch64/libc.abilist | 3 ++ .../sysv/linux/aarch64/libpthread.abilist | 22 -------- sysdeps/unix/sysv/linux/aarch64/send.c | 9 ++++ sysdeps/unix/sysv/linux/aarch64/sysdep.h | 4 -- sysdeps/unix/sysv/linux/alpha/libc.abilist | 10 ++++ .../unix/sysv/linux/alpha/libpthread.abilist | 22 -------- sysdeps/unix/sysv/linux/arc/libc.abilist | 2 + .../unix/sysv/linux/arc/libpthread.abilist | 22 -------- sysdeps/unix/sysv/linux/arm/be/libc.abilist | 2 + .../unix/sysv/linux/arm/be/libpthread.abilist | 22 -------- sysdeps/unix/sysv/linux/arm/le/libc.abilist | 2 + .../unix/sysv/linux/arm/le/libpthread.abilist | 22 -------- sysdeps/unix/sysv/linux/arm/localplt.data | 1 - sysdeps/unix/sysv/linux/csky/libc.abilist | 2 + .../unix/sysv/linux/csky/libpthread.abilist | 22 -------- sysdeps/unix/sysv/linux/hppa/libc.abilist | 2 + .../unix/sysv/linux/hppa/libpthread.abilist | 22 -------- sysdeps/unix/sysv/linux/i386/libc.abilist | 10 ++++ .../unix/sysv/linux/i386/libpthread.abilist | 22 -------- sysdeps/unix/sysv/linux/ia64/libc.abilist | 2 + .../unix/sysv/linux/ia64/libpthread.abilist | 22 -------- sysdeps/unix/sysv/linux/internal-signals.h | 5 ++ sysdeps/unix/sysv/linux/lseek64.c | 7 ++- .../sysv/linux/m68k/coldfire/libc.abilist | 2 + .../linux/m68k/coldfire/libpthread.abilist | 22 -------- .../unix/sysv/linux/m68k/m680x0/libc.abilist | 10 ++++ .../sysv/linux/m68k/m680x0/libpthread.abilist | 22 -------- .../sysv/linux/microblaze/be/libc.abilist | 2 + .../linux/microblaze/be/libpthread.abilist | 22 -------- .../sysv/linux/microblaze/le/libc.abilist | 2 + .../linux/microblaze/le/libpthread.abilist | 22 -------- .../sysv/linux/mips/mips32/fpu/libc.abilist | 2 + .../sysv/linux/mips/mips32/libpthread.abilist | 22 -------- .../sysv/linux/mips/mips32/nofpu/libc.abilist | 2 + .../sysv/linux/mips/mips64/libpthread.abilist | 22 -------- .../sysv/linux/mips/mips64/n32/libc.abilist | 2 + .../sysv/linux/mips/mips64/n64/libc.abilist | 2 + sysdeps/unix/sysv/linux/nios2/libc.abilist | 3 ++ .../unix/sysv/linux/nios2/libpthread.abilist | 22 -------- sysdeps/unix/sysv/linux/nios2/send.c | 9 ++++ sysdeps/unix/sysv/linux/nios2/sysdep.h | 4 -- sysdeps/unix/sysv/linux/open64.c | 6 ++- .../linux/powerpc/powerpc32/fpu/libc.abilist | 10 ++++ .../powerpc/powerpc32/libpthread.abilist | 22 -------- .../powerpc/powerpc32/nofpu/libc.abilist | 10 ++++ .../linux/powerpc/powerpc64/be/libc.abilist | 2 + .../powerpc/powerpc64/be/libpthread.abilist | 22 -------- .../linux/powerpc/powerpc64/le/libc.abilist | 2 + .../powerpc/powerpc64/le/libpthread.abilist | 22 -------- sysdeps/unix/sysv/linux/pread.c | 6 +++ sysdeps/unix/sysv/linux/pread64.c | 10 ++++ sysdeps/unix/sysv/linux/pt-raise.c | 20 -------- sysdeps/unix/sysv/linux/pwrite.c | 6 +++ sysdeps/unix/sysv/linux/pwrite64.c | 10 ++++ .../unix/sysv/linux/riscv/rv32/libc.abilist | 2 + .../sysv/linux/riscv/rv32/libpthread.abilist | 22 -------- .../unix/sysv/linux/riscv/rv64/libc.abilist | 2 + .../sysv/linux/riscv/rv64/libpthread.abilist | 22 -------- .../unix/sysv/linux/s390/s390-32/libc.abilist | 10 ++++ .../linux/s390/s390-32/libpthread.abilist | 22 -------- .../unix/sysv/linux/s390/s390-64/libc.abilist | 2 + .../linux/s390/s390-64/libpthread.abilist | 22 -------- sysdeps/unix/sysv/linux/send.c | 2 - sysdeps/unix/sysv/linux/sh/be/libc.abilist | 2 + .../unix/sysv/linux/sh/be/libpthread.abilist | 22 -------- sysdeps/unix/sysv/linux/sh/le/libc.abilist | 2 + .../unix/sysv/linux/sh/le/libpthread.abilist | 22 -------- .../sysv/linux/sparc/sparc32/libc.abilist | 10 ++++ .../linux/sparc/sparc32/libpthread.abilist | 22 -------- .../sysv/linux/sparc/sparc64/libc.abilist | 2 + .../linux/sparc/sparc64/libpthread.abilist | 22 -------- sysdeps/unix/sysv/linux/sysdep.h | 4 -- .../unix/sysv/linux/x86_64/64/libc.abilist | 2 + .../sysv/linux/x86_64/64/libpthread.abilist | 22 -------- .../unix/sysv/linux/x86_64/x32/libc.abilist | 2 + .../sysv/linux/x86_64/x32/libpthread.abilist | 22 -------- 91 files changed, 222 insertions(+), 893 deletions(-) delete mode 100644 nptl/pt-allocrtsig.c delete mode 100644 nptl/pt-raise.c delete mode 100644 nptl/sigaction.c delete mode 100644 sysdeps/nptl/allocrtsig.c create mode 100644 sysdeps/unix/sysv/linux/aarch64/send.c create mode 100644 sysdeps/unix/sysv/linux/nios2/send.c delete mode 100644 sysdeps/unix/sysv/linux/pt-raise.c