From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: AS31976 209.132.180.0/23 X-Spam-Status: No, score=-3.9 required=3.0 tests=AWL,BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_EF,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.2 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 C7F1C1F461 for ; Tue, 23 Jul 2019 19:55:06 +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:cc:references:from:message-id:date :mime-version:in-reply-to:content-type :content-transfer-encoding; q=dns; s=default; b=uy3601PcxnVxwlRj WqoocgzV57mZhG/Ai97/L6LBCenpLz9PCcR1+SrblD9QMNhsIHE70xoNh5+Tn4LT 7O+7uEB/G3zI3D0zgZEuZ1DGsoZvP2tjQh9V97OGtolpGEdchQ+/jk780UWoYFHQ Jrtf4GTqwKeZ6IGJGoKwLq9RzqA= 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:cc:references:from:message-id:date :mime-version:in-reply-to:content-type :content-transfer-encoding; s=default; bh=o7zZFBAPy4PZRfBFhBHb4V zkIUQ=; b=ca6UUmzo8ia0xvU5of+3VSUVmNhi+Wus7q6VmzEphkc1Tt4Uergm5v wvz3ORqwiyJSMAJ0Na3HF9m9d69YBZjcF/mDqfcN39LgTnXj5Y7oweljH2fSO6tf u2OW+4M/EY5WelVQXFMzlFfLRzheilpY/nx4x1v5EMVIKrADedANs= Received: (qmail 53504 invoked by alias); 23 Jul 2019 19:55:04 -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 53496 invoked by uid 89); 23 Jul 2019 19:55:04 -0000 Authentication-Results: sourceware.org; auth=none X-HELO: mail-vk1-f196.google.com Subject: Re: [PATCH] nptl: Remove unnecessary forwarding of pthread_cond_clockwait from libc To: Adhemerval Zanella , Mike Crowe , libc-alpha@sourceware.org Cc: Florian Weimer References: <96ffa5b0-37b8-8543-a966-4f664cf9a71a@linaro.org> From: Carlos O'Donell Message-ID: Date: Tue, 23 Jul 2019 15:54:57 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0 MIME-Version: 1.0 In-Reply-To: <96ffa5b0-37b8-8543-a966-4f664cf9a71a@linaro.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit On 7/16/19 2:40 PM, Adhemerval Zanella wrote: > > > On 16/07/2019 11:29, Mike Crowe wrote: >> In afe4de7d283ebd88157126c5494ce1796194c16e, I added forwarding functions >> from libc to libpthread for __pthread_cond_clockwait and >> pthread_cond_clockwait to mirror those for pthread_cond_timedwait. These >> are unnecessary[1], since these functions aren't (yet) being called from >> within libc itself. Let's remove them. >> >> * nptl/forward.c: Remove unnecessary __pthread_cond_clockwait and >> pthread_cond_clockwait forwarding functions. There are no internal >> users, so it is unnecessary to expose these functions in libc.so. >> * sysdeps/nptl/pthread-functions.h (pthread_functions): Remove >> unnecessary ptr___pthread_cond_clockwait member. >> * nptl/nptl-init.c (pthread_functions): Remove assignment of >> removed member. >> >> [1] https://sourceware.org/ml/libc-alpha/2017-10/msg00082.html > > LGTM, thanks. Sorry I missed it on my reviews. We will need an ack from > Carlos to push it upstream in current release status. > > Reviwed-by: Adhemerval Zanella > Just double checking for myself that this is in place now. Thanks. commit 4a8f6d3155e60c19158208ee14022f04c8b0334d Author: Mike Crowe Date: Wed Jul 17 14:51:08 2019 -0300 nptl: Remove unnecessary forwarding of pthread_cond_clockwait from libc In afe4de7d283ebd88157126c5494ce1796194c16e, I added forwarding functions from libc to libpthread for __pthread_cond_clockwait and pthread_cond_clockwait to mirror those for pthread_cond_timedwait. These are unnecessary[1], since these functions aren't (yet) being called from within libc itself. Let's remove them. * nptl/forward.c: Remove unnecessary __pthread_cond_clockwait and pthread_cond_clockwait forwarding functions. There are no internal users, so it is unnecessary to expose these functions in libc.so. * sysdeps/nptl/pthread-functions.h (pthread_functions): Remove unnecessary ptr___pthread_cond_clockwait member. * nptl/nptl-init.c (pthread_functions): Remove assignment of removed member. Reviewed-by: Adhemerval Zanella [1] https://sourceware.org/ml/libc-alpha/2017-10/msg00082.html >> --- >> ChangeLog | 10 ++++++++++ >> nptl/forward.c | 5 ----- >> nptl/nptl-init.c | 1 - >> sysdeps/nptl/pthread-functions.h | 4 ---- >> 4 files changed, 10 insertions(+), 10 deletions(-) >> >> diff --git a/ChangeLog b/ChangeLog >> index bd57a81..3d884f2 100644 >> --- a/ChangeLog >> +++ b/ChangeLog >> @@ -1,3 +1,13 @@ >> +2019-07-16 Mike Crowe >> + >> + * nptl/forward.c: Remove unnecessary __pthread_cond_clockwait and >> + pthread_cond_clockwait forwarding functions. There are no internal >> + users, so it is unnecessary to expose these functions in libc.so. >> + * sysdeps/nptl/pthread-functions.h (pthread_functions): Remove >> + unnecessary ptr___pthread_cond_clockwait member. >> + * nptl/nptl-init.c (pthread_functions): Remove assignment of >> + removed member. >> + >> 2019-07-12 Mike Crowe >> >> * nptl/pthread_cond_wait.c: (__pthread_cond_clockwait): Remove code >> diff --git a/nptl/forward.c b/nptl/forward.c >> index 50f358f..ed1e7d0 100644 >> --- a/nptl/forward.c >> +++ b/nptl/forward.c >> @@ -164,11 +164,6 @@ FORWARD (__pthread_cond_timedwait, >> const struct timespec *abstime), (cond, mutex, abstime), 0) >> versioned_symbol (libc, __pthread_cond_timedwait, pthread_cond_timedwait, >> GLIBC_2_3_2); >> -FORWARD (__pthread_cond_clockwait, >> - (pthread_cond_t *cond, pthread_mutex_t *mutex, clockid_t clockid, >> - const struct timespec *abstime), (cond, mutex, clockid, abstime), >> - 0) >> -weak_alias (__pthread_cond_clockwait, pthread_cond_clockwait); >> >> >> FORWARD (pthread_equal, (pthread_t thread1, pthread_t thread2), >> diff --git a/nptl/nptl-init.c b/nptl/nptl-init.c >> index 9c2a3d7..73935f8 100644 >> --- a/nptl/nptl-init.c >> +++ b/nptl/nptl-init.c >> @@ -95,7 +95,6 @@ static const struct pthread_functions pthread_functions = >> .ptr___pthread_cond_signal = __pthread_cond_signal, >> .ptr___pthread_cond_wait = __pthread_cond_wait, >> .ptr___pthread_cond_timedwait = __pthread_cond_timedwait, >> - .ptr___pthread_cond_clockwait = __pthread_cond_clockwait, >> # if SHLIB_COMPAT(libpthread, GLIBC_2_0, GLIBC_2_3_2) >> .ptr___pthread_cond_broadcast_2_0 = __pthread_cond_broadcast_2_0, >> .ptr___pthread_cond_destroy_2_0 = __pthread_cond_destroy_2_0, >> diff --git a/sysdeps/nptl/pthread-functions.h b/sysdeps/nptl/pthread-functions.h >> index cfa9660..cd5e94d 100644 >> --- a/sysdeps/nptl/pthread-functions.h >> +++ b/sysdeps/nptl/pthread-functions.h >> @@ -55,10 +55,6 @@ struct pthread_functions >> int (*ptr___pthread_cond_wait) (pthread_cond_t *, pthread_mutex_t *); >> int (*ptr___pthread_cond_timedwait) (pthread_cond_t *, pthread_mutex_t *, >> const struct timespec *); >> - int (*ptr___pthread_cond_clockwait) (pthread_cond_t *, >> - pthread_mutex_t *, >> - clockid_t, >> - const struct timespec *); >> int (*ptr___pthread_cond_broadcast_2_0) (pthread_cond_2_0_t *); >> int (*ptr___pthread_cond_destroy_2_0) (pthread_cond_2_0_t *); >> int (*ptr___pthread_cond_init_2_0) (pthread_cond_2_0_t *, >> >> base-commit: 1ff1373b3302e9e095dc4fd4d371451c00190780 >> -- Cheers, Carlos.