From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ej1-x636.google.com (mail-ej1-x636.google.com [IPv6:2a00:1450:4864:20::636]) by sourceware.org (Postfix) with ESMTPS id 252343858D28; Thu, 29 Sep 2022 00:09:15 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 252343858D28 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-ej1-x636.google.com with SMTP id lc7so30386928ejb.0; Wed, 28 Sep 2022 17:09:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date; bh=7BHIy+1xh7/BL7QP5MRzLfU1QgKAPg21fU4mCXNRu2w=; b=a/46zhRnPHE424INEM3ZQsMpmbY8PrzM2OdMvyW0r5Oe8o5vdLFfreLVLnxLJduQyW zUvAMj7AH1wtUfwBVVdXIH87ePHasl4Ev1p7kmdgJXNOKIMLzdtpf6xFIfDtflaAMu2c W09qhZwoNamIPmONygc6fnOOvDymPZTuBxFfN50hIjA05eYp4cQ8wPDBu2rr/9CHdEOJ 8pSirQfj+1K108DmnG+vnHb689sNohMbDtmAawQ2hiehYuA8hFLu8bRzAqR2bZPs7IQd MIBOqDcAIQmCKOm7vp30f3jKykb/8A06NfwiOpKegm4kFTJgUEGQ6tXyppNdv/UQZ22P Lr4w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date; bh=7BHIy+1xh7/BL7QP5MRzLfU1QgKAPg21fU4mCXNRu2w=; b=jmYVAnyA/bpn4eKMA6/wQhyOYhvopuNFnqYi96QMMkOnBqrZQ6MxMBwKKEUvAK3jzh 78c9AkQFbfoGt2g7RtlwO9MtMvx9x+JXTmtfSV8D9TcZShyA8G0k7Wc3Yu6aGpm/NJMf V4dm4+9/XDibl6wbpy+nKQ0BoNOn2N74JDpcJ5zc5omfRTalgnxfzn3osf3FPTMwWJtY n2wmYGueUINFjdzeS1zxsaFIPY5wFwEknFCX82ipAWM0Iv4h/jNJKsRA1vnbfJIeimwT H4ZH3cyJrEvZMynseqlVS7JmAUfyQ+UhSvLHH9lI9g4BPkD6NFFuRx7RFNNVcpxvCcwK Ydsw== X-Gm-Message-State: ACrzQf1aUItFsQ+SerEX9xlvx78fGmCf8j/PYH9X9NXJnfCBgATzGmkX /S6b1iiK5kMXiVkJLLKGE42AoL9EmtIWBnFFEjCBvQpY X-Google-Smtp-Source: AMsMyM68xg9y9jMeel57t6EIpk1fQABtFfGO1wpXu5nJLWeg4xTtDKsne5gG2jAjrAroOe7acxptGkyjTPqYvf3/qw8= X-Received: by 2002:a17:906:fe46:b0:73d:939a:ec99 with SMTP id wz6-20020a170906fe4600b0073d939aec99mr366605ejb.169.1664410153615; Wed, 28 Sep 2022 17:09:13 -0700 (PDT) MIME-Version: 1.0 References: <20211111162428.2286605-1-hjl.tools@gmail.com> <20211111162428.2286605-5-hjl.tools@gmail.com> <87v90xryvi.fsf@igel.home> In-Reply-To: From: Noah Goldstein Date: Wed, 28 Sep 2022 20:09:02 -0400 Message-ID: Subject: Re: [PATCH v6 4/4] Avoid extra load with CAS in __pthread_mutex_clocklock_common [BZ #28537] To: Sunil Pandey Cc: Andreas Schwab , Libc-stable Mailing List , Florian Weimer , Arjan van de Ven , GNU C Library , "Paul A . Clarke" Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-9.4 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,GIT_PATCH_0,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On Sun, Sep 11, 2022 at 4:13 PM Sunil Pandey via Libc-stable wrote: > > On Fri, Nov 12, 2021 at 10:53 AM Andreas Schwab wrote: > > > > On Nov 11 2021, H.J. Lu wrote: > > > > > diff --git a/nptl/pthread_mutex_timedlock.c b/nptl/pthread_mutex_timedlock.c > > > index 57f3f28869..f763cfc7fa 100644 > > > --- a/nptl/pthread_mutex_timedlock.c > > > +++ b/nptl/pthread_mutex_timedlock.c > > > @@ -233,12 +233,12 @@ __pthread_mutex_clocklock_common (pthread_mutex_t *mutex, > > > meantime. */ > > > if ((oldval & FUTEX_WAITERS) == 0) > > > { > > > - if (atomic_compare_and_exchange_bool_acq (&mutex->__data.__lock, > > > - oldval | FUTEX_WAITERS, > > > - oldval) > > > - != 0) > > > + int val; > > > + if ((val = atomic_compare_and_exchange_val_acq > > > + (&mutex->__data.__lock, oldval | FUTEX_WAITERS, > > > + oldval)) != oldval) > > > > Please move the assignment out of the condition. > > > > Andreas. > > > > -- > > Andreas Schwab, schwab@linux-m68k.org > > GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510 2552 DF73 E780 A9DA AEC1 > > "And now for something completely different." > > I would like to backport this patch to release branch 2.33 and 2.34 > > Any comments/suggestions or objections on this. > > commit 0b82747dc48d5bf0871bdc6da8cb6eec1256355f > Author: H.J. Lu > Date: Thu Nov 11 06:31:51 2021 -0800 > > Avoid extra load with CAS in __pthread_mutex_lock_full [BZ #28537] > > Replace boolean CAS with value CAS to avoid the extra load. > > Reviewed-by: Szabolcs Nagy Fine by me.