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 4B2D81F85E for ; Fri, 13 Jul 2018 18:47:53 +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:to:references:from:message-id:date :mime-version:in-reply-to:content-type :content-transfer-encoding; q=dns; s=default; b=fjHPqg8JHkF9vouL WgIFd6PfQuC1JAWERfBn4CF7D0Cb+mBlu7dbdoCUOac4rO1GIfBdUN3wGqNQQqy7 bMQrtEMGdBhMIoJi1u8/LHp30MNpKtYMwt0IZwqlzxi6WdT+vPjiBhOqc31C1seR Fan//Ao6DHWozgcXNNpvW6dO5vY= 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:to:references:from:message-id:date :mime-version:in-reply-to:content-type :content-transfer-encoding; s=default; bh=gDL6gAiPjifqY0T/djNrJx USUq0=; b=YPoHwMSS9B/eTR14eQDFgbG5Hy8c/i7s/U93NPQs0CuVvk5wi/AxyP udX63cQwRFSCTZLVBBNElPVfn/fDv3VXy1r2zwOm7y35iEsyJQScouQGcuyN+mP5 s2Vjla0qSAb1JSOgHjYeZB61Z23QyiqAPZGH2rm1QAK+MG7vefqso= Received: (qmail 86207 invoked by alias); 13 Jul 2018 18:47:51 -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 86181 invoked by uid 89); 13 Jul 2018 18:47:48 -0000 Authentication-Results: sourceware.org; auth=none X-HELO: mail-ua0-f194.google.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=subject:to:references:from:openpgp:autocrypt:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=10zR+bSWR43NMMHZD+pUDVvl9oCXQimThpbxbjOAfUw=; b=hyKNhpf1yDj/gImEukBB35CyWIyliVchywRjjIyJs37OKciG2u2rmUv40FlHco/1kG G91kqdOxBzQJ0sEmg/NqrACrFqieGDAUD+nMmQLSnbgsy1QCzaiZlD0KT1YwqSrif2fr fDNvz9gjbb2RkUSvWunPZxJaejW8RDNmiyvkk= Subject: Re: [PATCH v8 6/8] nptl: Add abilist symbols for C11 threads To: Florian Weimer , libc-alpha@sourceware.org References: <1517591084-11347-1-git-send-email-adhemerval.zanella@linaro.org> <1517591084-11347-7-git-send-email-adhemerval.zanella@linaro.org> <97b42cb3-e76a-ac71-65cd-c1f6d8c404aa@redhat.com> <90dc04ab-81df-b0d7-a086-d00ea5cc979d@linaro.org> <5ec19a17-30a3-e9b7-9475-c28b247c8daa@redhat.com> From: Adhemerval Zanella Openpgp: preference=signencrypt Message-ID: <98a36756-5dc8-680b-c065-3501ca4ec7d4@linaro.org> Date: Fri, 13 Jul 2018 15:47:43 -0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0 MIME-Version: 1.0 In-Reply-To: <5ec19a17-30a3-e9b7-9475-c28b247c8daa@redhat.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit On 13/07/2018 14:49, Florian Weimer wrote: > On 07/13/2018 05:49 PM, Adhemerval Zanella wrote: > >> Thanks for all the reviews, I have updated my personal branch [1] with >> all you required changes: > > Thank you for your patience.  This is looking really good now. > >>    - ABI fixes for mips-gnu-linux-soft. > > I can confirm that these are fixed. > >>    - pthread_create / pthread_join cast inconsistency. >>    - sysdeps/nptl/threads.h moved to nptl/threads.h. >>    - thrd_sleep is now a cancellable entrypoint. >>    - once_flag and ONCE_FLAG_INIT and __ONCE_ALIGNMENT definition. > > Should the type be a struct? > > I think ONCE_FLAG_INIT needs to be a compound literal, not an initializer, at least that's how I read the standard (“which expands to a value that can be used to initialize an object”). Right, you are correct, this will prevent ONCE_FLAG_INIT to be wrongly used to initialize other objects than once_flag. I adjust to be a struct as well. > >>    - thread_local guards for C++. > > Missing indentation of the #define.  The manual could mention that for C++, C++11 or later needs to be used to get the thread_local keyword (not the macro). Ack and I added a note on manual about C++11 requirement. > >>    - TSS_DTOR_ITERATIONS assert check. >> >> I am not sure about the thread error code mapping to errno, it will >> required tying POSIX error code to C11 use some internal mechanism >> It will most like require generate a platform-specific file >> auto-generated from errno definitions (more build complexity), and >> I am not sure if this micro-optimization will really yields any >> measurable gain. > > I'm fine with leaving it as is.