From patchwork Mon May 3 14:31:15 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Florian Weimer X-Patchwork-Id: 43222 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 CCB5B3943403; Mon, 3 May 2021 14:31:10 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org CCB5B3943403 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1620052270; bh=FwXmdtvFRHJYT5CgvlOhog1FjUtLeif8K0UcoB9sOK4=; h=To:Subject:Date:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=JWk84tMJSBh7+///VGZBfoMHqtM38E7WDM3renziaGyqoBc86Fue4dt+VmG9NDrs+ d+7jRD+/80kXb3KxGULvKmBIWOgcVHRot9Xp6yOsDHxk0PbhWdZWJFuMPgRicyqQmb 1UgXDX5GvzRqsQKmXnL1WBXY8ToP1qHVjBvCFAgc= X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by sourceware.org (Postfix) with ESMTP id 2FE523939C06 for ; Mon, 3 May 2021 14:31:08 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 2FE523939C06 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-484-O8cxfUDzMzacesD0uTOj8A-1; Mon, 03 May 2021 10:31:04 -0400 X-MC-Unique: O8cxfUDzMzacesD0uTOj8A-1 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 50784100806E for ; Mon, 3 May 2021 14:31:03 +0000 (UTC) Received: from oldenburg.str.redhat.com (ovpn-112-137.ams2.redhat.com [10.36.112.137]) by smtp.corp.redhat.com (Postfix) with ESMTPS id C33B05D72F for ; Mon, 3 May 2021 14:31:02 +0000 (UTC) To: libc-alpha@sourceware.org Subject: [PATCH 0/7] nptl: Move barrier implemention into libc Message-Id: Date: Mon, 03 May 2021 16:31:15 +0200 User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com X-Spam-Status: No, score=-6.8 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, 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: Florian Weimer via Libc-alpha From: Florian Weimer Reply-To: Florian Weimer Errors-To: libc-alpha-bounces@sourceware.org Sender: "Libc-alpha" A minor complication is that the message queue implementation uses barriers to communicate with its helper thread, but is still in libpthread, so private exports had to be added. Tested on i686-linux-gnu, powerpc64le-linux-gnu, x86_64-linux-gnu. Built with build-many-glibcs.py. Florian Weimer (7): nptl: Move pthread_barrier_destroy into libc nptl: Move pthread_barrier_init into libc nptl: Move pthread_barrier_wait into libc nptl: Move pthread_barrierattr_destroy into libc nptl: Move pthread_barrierattr_init into libc nptl: Move pthread_barrierattr_getpshared into libc nptl: Move pthread_barrierattr_setpshared into libc include/pthread.h | 3 +++ nptl/Makefile | 14 +++++------ nptl/Versions | 25 ++++++++++++------- nptl/pthread_barrier_destroy.c | 11 ++++++-- nptl/pthread_barrier_init.c | 15 ++++++++--- nptl/pthread_barrier_wait.c | 14 +++++++++-- nptl/pthread_barrierattr_destroy.c | 11 ++++++-- nptl/pthread_barrierattr_getpshared.c | 11 ++++++-- nptl/pthread_barrierattr_init.c | 11 ++++++-- nptl/pthread_barrierattr_setpshared.c | 11 ++++++-- sysdeps/unix/sysv/linux/aarch64/libc.abilist | 14 +++++++++++ .../sysv/linux/aarch64/libpthread.abilist | 7 ------ sysdeps/unix/sysv/linux/alpha/libc.abilist | 14 +++++++++++ .../unix/sysv/linux/alpha/libpthread.abilist | 7 ------ sysdeps/unix/sysv/linux/arc/libc.abilist | 14 +++++++++++ .../unix/sysv/linux/arc/libpthread.abilist | 7 ------ sysdeps/unix/sysv/linux/arm/be/libc.abilist | 14 +++++++++++ .../unix/sysv/linux/arm/be/libpthread.abilist | 7 ------ sysdeps/unix/sysv/linux/arm/le/libc.abilist | 14 +++++++++++ .../unix/sysv/linux/arm/le/libpthread.abilist | 7 ------ sysdeps/unix/sysv/linux/csky/libc.abilist | 14 +++++++++++ .../unix/sysv/linux/csky/libpthread.abilist | 7 ------ sysdeps/unix/sysv/linux/hppa/libc.abilist | 14 +++++++++++ .../unix/sysv/linux/hppa/libpthread.abilist | 7 ------ sysdeps/unix/sysv/linux/i386/libc.abilist | 14 +++++++++++ .../unix/sysv/linux/i386/libpthread.abilist | 7 ------ sysdeps/unix/sysv/linux/ia64/libc.abilist | 14 +++++++++++ .../unix/sysv/linux/ia64/libpthread.abilist | 7 ------ .../sysv/linux/m68k/coldfire/libc.abilist | 14 +++++++++++ .../linux/m68k/coldfire/libpthread.abilist | 7 ------ .../unix/sysv/linux/m68k/m680x0/libc.abilist | 14 +++++++++++ .../sysv/linux/m68k/m680x0/libpthread.abilist | 7 ------ .../sysv/linux/microblaze/be/libc.abilist | 14 +++++++++++ .../linux/microblaze/be/libpthread.abilist | 7 ------ .../sysv/linux/microblaze/le/libc.abilist | 14 +++++++++++ .../linux/microblaze/le/libpthread.abilist | 7 ------ .../sysv/linux/mips/mips32/fpu/libc.abilist | 14 +++++++++++ .../sysv/linux/mips/mips32/libpthread.abilist | 7 ------ .../sysv/linux/mips/mips32/nofpu/libc.abilist | 14 +++++++++++ .../sysv/linux/mips/mips64/libpthread.abilist | 7 ------ .../sysv/linux/mips/mips64/n32/libc.abilist | 14 +++++++++++ .../sysv/linux/mips/mips64/n64/libc.abilist | 14 +++++++++++ sysdeps/unix/sysv/linux/nios2/libc.abilist | 14 +++++++++++ .../unix/sysv/linux/nios2/libpthread.abilist | 7 ------ .../linux/powerpc/powerpc32/fpu/libc.abilist | 14 +++++++++++ .../powerpc/powerpc32/libpthread.abilist | 7 ------ .../powerpc/powerpc32/nofpu/libc.abilist | 14 +++++++++++ .../linux/powerpc/powerpc64/be/libc.abilist | 14 +++++++++++ .../powerpc/powerpc64/be/libpthread.abilist | 7 ------ .../linux/powerpc/powerpc64/le/libc.abilist | 14 +++++++++++ .../powerpc/powerpc64/le/libpthread.abilist | 7 ------ .../unix/sysv/linux/riscv/rv32/libc.abilist | 14 +++++++++++ .../sysv/linux/riscv/rv32/libpthread.abilist | 7 ------ .../unix/sysv/linux/riscv/rv64/libc.abilist | 14 +++++++++++ .../sysv/linux/riscv/rv64/libpthread.abilist | 7 ------ .../unix/sysv/linux/s390/s390-32/libc.abilist | 14 +++++++++++ .../linux/s390/s390-32/libpthread.abilist | 7 ------ .../unix/sysv/linux/s390/s390-64/libc.abilist | 14 +++++++++++ .../linux/s390/s390-64/libpthread.abilist | 7 ------ sysdeps/unix/sysv/linux/sh/be/libc.abilist | 14 +++++++++++ .../unix/sysv/linux/sh/be/libpthread.abilist | 7 ------ sysdeps/unix/sysv/linux/sh/le/libc.abilist | 14 +++++++++++ .../unix/sysv/linux/sh/le/libpthread.abilist | 7 ------ .../sysv/linux/sparc/sparc32/libc.abilist | 14 +++++++++++ .../linux/sparc/sparc32/libpthread.abilist | 7 ------ .../sysv/linux/sparc/sparc64/libc.abilist | 14 +++++++++++ .../linux/sparc/sparc64/libpthread.abilist | 7 ------ .../unix/sysv/linux/x86_64/64/libc.abilist | 14 +++++++++++ .../sysv/linux/x86_64/64/libpthread.abilist | 7 ------ .../unix/sysv/linux/x86_64/x32/libc.abilist | 14 +++++++++++ .../sysv/linux/x86_64/x32/libpthread.abilist | 7 ------ 71 files changed, 543 insertions(+), 234 deletions(-)