From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: AS31976 209.132.180.0/23 X-Spam-Status: No, score=-3.2 required=3.0 tests=AWL,BAYES_00,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED, SPF_HELO_PASS,SPF_PASS shortcircuit=no autolearn=ham autolearn_force=no version=3.4.1 Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dcvr.yhbt.net (Postfix) with ESMTPS id AFA7B1F597 for ; Thu, 19 Jul 2018 17:47:09 +0000 (UTC) DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:subject:from:to:references:cc:message-id:date :mime-version:in-reply-to:content-type :content-transfer-encoding; q=dns; s=default; b=e1j1k3Z8lA+irnah ges30N+4ZGAHsPt2yaF4cTetILmShkB2hD/LgC+/4YsqyQ9EzRcCDJif/Z47ETZn MJ0RzqMRzMjmZGxXKiI/gIKxpUpA/Hl1IbjAq6RFQYMclnSovlhgr4V0g5WEE1WE 4dpFYwJvm0vUWfrlB4ICZrO0py0= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:subject:from:to:references:cc:message-id:date :mime-version:in-reply-to:content-type :content-transfer-encoding; s=default; bh=8MQq4dJb3zkCQFbhyJPmLL iP6iA=; b=NuU8AJwW9dOzXOFgfpTIo4Qn54aS9d6DmXs0LWvnCXuJVKhZCb8BuE y1QCWpaDMH1WpYJ5VIHqIqHNcE/Cpz7eyi6uzLx74uTUP2zMnXJuWqGL1TUbGJhz DMzvjkACe+6g4LEpSFEZCTq+dJipcaVBEOx9umdZSt7G6tVsKzVVs= Received: (qmail 92128 invoked by alias); 19 Jul 2018 17:47:07 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Received: (qmail 92116 invoked by uid 89); 19 Jul 2018 17:47:06 -0000 Authentication-Results: sourceware.org; auth=none X-HELO: mail-qk0-f196.google.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=subject:from:to:references:cc:openpgp:autocrypt:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=KY1M4zPILOsQStdTmdE3mZzUEaI+bnnK5Xio2lap9VM=; b=fgIcFaQyhnGaxTWyO/pFKSPAWgz4JUIyfOTOtgQBle+2mWSLUuhxoe5IFEahMeJRe+ Hk7Ga4ct2znGpAZ4EwlyPObh/I655onFJ+OIuP4yt22pklMQM4LCGXSQSavGTTvypR7H ceiTWf9ZZkKg6csi66c91sekwH9/ZZm1LEJdc= Subject: Re: [PATCH v8 0/8] Add support for ISO C threads.h From: Adhemerval Zanella To: libc-alpha@sourceware.org References: <1517591084-11347-1-git-send-email-adhemerval.zanella@linaro.org> <203a3def-74d0-fa66-9792-a587a089a359@linaro.org> Cc: Carlos O'Donell , Florian Weimer Openpgp: preference=signencrypt Message-ID: <46c7b370-f98d-30a3-9aac-c5e2c5d5e1d0@linaro.org> Date: Thu, 19 Jul 2018 14:46:56 -0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 In-Reply-To: <203a3def-74d0-fa66-9792-a587a089a359@linaro.org> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Florian, First thanks for the thoroughly review for c11 threads so far. I think it has covered most the upcoming rough pieces. Carlos, do you think we can squeeze this for 2.28? As you put private, I also don't think we will get a 'pristine' implementation with optimal object sizes without a refactor of internal nptl implementation. On 27/06/2018 10:39, Adhemerval Zanella wrote: > Ping, do we still want this for 2.28 release? > > On 02/02/2018 15:04, Adhemerval Zanella wrote: >> This is a new update for C11 threads support based on my previous [1] >> version. The main changes from previous version are: >> >> - Rebase against 2.28. >> >> - Add RISCV abilist symbols. >> >> - Adjusted copyright dates for 2018. >> >> - Remove some redundant comments. >> >> I tested this without regression with a full make/check on >> x86_64-linux-gnu, i686-linux-gnu, powerpc64le-linux-gnu, >> powerpc-linux-gnu, aarch64-linux-gnu, arm-linux-gnueabihf, >> sparc64-linux-gnu, and sparcv9-linux-gnu. >> >> [1] https://sourceware.org/ml/libc-alpha/2017-09/msg00871.html >> >> Adhemerval Zanella (7): >> nptl: Add C11 threads thrd_* functions >> nptl: Add C11 threads mtx_* functions >> nptl: Add C11 threads call_once functions >> nptl: Add C11 threads cnd_* functions >> nptl: Add C11 threads tss_* functions >> nptl: Add abilist symbols for C11 threads >> nptl: Add test cases for ISO C11 threads >> >> Juan Manuel Torres Palma (1): >> Add manual documentation for threads.h >> >> ChangeLog | 175 ++++++++++ >> conform/Makefile | 7 +- >> conform/data/threads.h-data | 57 ++++ >> include/stdc-predef.h | 3 - >> manual/Makefile | 2 +- >> manual/isothreads.texi | 355 +++++++++++++++++++++ >> nptl/Makefile | 15 +- >> nptl/Versions | 9 + >> nptl/call_once.c | 31 ++ >> nptl/cnd_broadcast.c | 26 ++ >> nptl/cnd_destroy.c | 26 ++ >> nptl/cnd_init.c | 32 ++ >> nptl/cnd_signal.c | 26 ++ >> nptl/cnd_timedwait.c | 29 ++ >> nptl/cnd_wait.c | 27 ++ >> nptl/descr.h | 2 + >> nptl/mtx_destroy.c | 26 ++ >> nptl/mtx_init.c | 52 +++ >> nptl/mtx_lock.c | 26 ++ >> nptl/mtx_timedlock.c | 28 ++ >> nptl/mtx_trylock.c | 26 ++ >> nptl/mtx_unlock.c | 26 ++ >> nptl/pthreadP.h | 3 + >> nptl/pthread_create.c | 18 +- >> nptl/thrd_create.c | 29 ++ >> nptl/thrd_current.c | 25 ++ >> nptl/thrd_detach.c | 28 ++ >> nptl/thrd_equal.c | 25 ++ >> nptl/thrd_exit.c | 25 ++ >> nptl/thrd_join.c | 30 ++ >> nptl/thrd_priv.h | 45 +++ >> nptl/thrd_sleep.c | 38 +++ >> nptl/thrd_yield.c | 26 ++ >> nptl/tss_create.c | 28 ++ >> nptl/tss_delete.c | 25 ++ >> nptl/tss_get.c | 25 ++ >> nptl/tss_set.c | 26 ++ >> nptl/tst-call-once.c | 66 ++++ >> nptl/tst-cnd-basic.c | 68 ++++ >> nptl/tst-cnd-broadcast.c | 83 +++++ >> nptl/tst-cnd-timedwait.c | 70 ++++ >> nptl/tst-mtx-basic.c | 73 +++++ >> nptl/tst-mtx-recursive.c | 45 +++ >> nptl/tst-mtx-timedlock.c | 98 ++++++ >> nptl/tst-mtx-trylock.c | 90 ++++++ >> nptl/tst-thrd-detach.c | 52 +++ >> nptl/tst-thrd-sleep.c | 51 +++ >> nptl/tst-tss-basic.c | 75 +++++ >> sysdeps/nptl/threads.h | 200 ++++++++++++ >> sysdeps/unix/sysv/linux/aarch64/libpthread.abilist | 26 ++ >> sysdeps/unix/sysv/linux/alpha/libpthread.abilist | 26 ++ >> sysdeps/unix/sysv/linux/arm/libpthread.abilist | 26 ++ >> sysdeps/unix/sysv/linux/hppa/libpthread.abilist | 26 ++ >> sysdeps/unix/sysv/linux/i386/libpthread.abilist | 26 ++ >> sysdeps/unix/sysv/linux/ia64/libpthread.abilist | 26 ++ >> .../sysv/linux/m68k/coldfire/libpthread.abilist | 26 ++ >> .../unix/sysv/linux/m68k/m680x0/libpthread.abilist | 26 ++ >> .../unix/sysv/linux/microblaze/libpthread.abilist | 26 ++ >> .../unix/sysv/linux/mips/mips32/libpthread.abilist | 26 ++ >> .../unix/sysv/linux/mips/mips64/libpthread.abilist | 26 ++ >> sysdeps/unix/sysv/linux/nios2/libpthread.abilist | 26 ++ >> .../linux/powerpc/powerpc32/libpthread.abilist | 26 ++ >> .../linux/powerpc/powerpc64/libpthread-le.abilist | 26 ++ >> .../linux/powerpc/powerpc64/libpthread.abilist | 26 ++ >> .../unix/sysv/linux/riscv/rv64/libpthread.abilist | 26 ++ >> .../sysv/linux/s390/s390-32/libpthread.abilist | 26 ++ >> .../sysv/linux/s390/s390-64/libpthread.abilist | 26 ++ >> sysdeps/unix/sysv/linux/sh/libpthread.abilist | 26 ++ >> .../sysv/linux/sparc/sparc32/libpthread.abilist | 26 ++ >> .../sysv/linux/sparc/sparc64/libpthread.abilist | 26 ++ >> .../sysv/linux/tile/tilegx32/libpthread.abilist | 26 ++ >> .../sysv/linux/tile/tilegx64/libpthread.abilist | 26 ++ >> .../unix/sysv/linux/x86_64/64/libpthread.abilist | 26 ++ >> .../unix/sysv/linux/x86_64/x32/libpthread.abilist | 26 ++ >> 74 files changed, 3011 insertions(+), 12 deletions(-) >> create mode 100644 conform/data/threads.h-data >> create mode 100644 manual/isothreads.texi >> create mode 100644 nptl/call_once.c >> create mode 100644 nptl/cnd_broadcast.c >> create mode 100644 nptl/cnd_destroy.c >> create mode 100644 nptl/cnd_init.c >> create mode 100644 nptl/cnd_signal.c >> create mode 100644 nptl/cnd_timedwait.c >> create mode 100644 nptl/cnd_wait.c >> create mode 100644 nptl/mtx_destroy.c >> create mode 100644 nptl/mtx_init.c >> create mode 100644 nptl/mtx_lock.c >> create mode 100644 nptl/mtx_timedlock.c >> create mode 100644 nptl/mtx_trylock.c >> create mode 100644 nptl/mtx_unlock.c >> create mode 100644 nptl/thrd_create.c >> create mode 100644 nptl/thrd_current.c >> create mode 100644 nptl/thrd_detach.c >> create mode 100644 nptl/thrd_equal.c >> create mode 100644 nptl/thrd_exit.c >> create mode 100644 nptl/thrd_join.c >> create mode 100644 nptl/thrd_priv.h >> create mode 100644 nptl/thrd_sleep.c >> create mode 100644 nptl/thrd_yield.c >> create mode 100644 nptl/tss_create.c >> create mode 100644 nptl/tss_delete.c >> create mode 100644 nptl/tss_get.c >> create mode 100644 nptl/tss_set.c >> create mode 100644 nptl/tst-call-once.c >> create mode 100644 nptl/tst-cnd-basic.c >> create mode 100644 nptl/tst-cnd-broadcast.c >> create mode 100644 nptl/tst-cnd-timedwait.c >> create mode 100644 nptl/tst-mtx-basic.c >> create mode 100644 nptl/tst-mtx-recursive.c >> create mode 100644 nptl/tst-mtx-timedlock.c >> create mode 100644 nptl/tst-mtx-trylock.c >> create mode 100644 nptl/tst-thrd-detach.c >> create mode 100644 nptl/tst-thrd-sleep.c >> create mode 100644 nptl/tst-tss-basic.c >> create mode 100644 sysdeps/nptl/threads.h >>