Received: by 2002:a05:6358:bb9e:b0:b9:5105:a5b4 with SMTP id df30csp4947845rwb; Tue, 6 Sep 2022 15:49:08 -0700 (PDT) X-Google-Smtp-Source: AA6agR49dfpQ0cRqRyzjJ1DQmZ4qCNuhY6zRM2ySf+T+NdCobHkm3xifkviZkXcgobpBSjUDGEhH X-Received: by 2002:a17:906:6a21:b0:741:430f:baca with SMTP id qw33-20020a1709066a2100b00741430fbacamr437493ejc.507.1662504548465; Tue, 06 Sep 2022 15:49:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1662504548; cv=none; d=google.com; s=arc-20160816; b=JmhPPVpJNw24pqjFb0ayDHviO6XIUucKw6mEy1fyL2RFxKl2OLpx83342mZfZ+hvFt Dl1cBTCEvj921W/70MYjd3iz5oAAOXVKIx1OeUu6QazBpAilQhloqjYe8I/lFXWh/GfT rBT9zpncZJhgU2cldLEO50ZCAWhNR2qAn1Xh1c/cKq3JsWPCKchNqQw6MZLTZqUM2v49 HAvdS8nKXv54SIPz3KTDA0yFRCAykSRpEqbWtgNp8R5uZztcUZjk0M6qbpnObWmXCYOJ ECY0EVBWSrc9Pf3Fv/i9y8ZdSktDMvUUuOaFjdw5X9UWeqfgf8JzYErefyJhzvGClmZo xUeA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:feedback-id :dkim-signature; bh=0QAInJ0rO3zMboDJklVEn7XuhNzPndw7J1Dim+/9qYU=; b=xNqrnFoQOa49Xj5ENrjkfgZ4oisAWnzO6b4jFQ6/ezHaEBS3ivnbAI7/M2THnv2Ofp 0Ac/Wcpud7BNeflwmoKAPZ3GuNrdXbLQHvZbkOKRc4DWTSDy3Qw97BwjjgsSlThj7Jg4 gNdWdS2m86lrQxSstY9o/jAbhmAqW2L2Bjnu6/rW5tPjJBLmruH/lAVOGy53WG0rJMuV OmZZsgN/8mPsiyqMNcPxrOPbaWGm/a4BgEa8FZWEUFLnBULFzy/3oLGwH0wGntV6eUWU OzlYh8EELr8YACkdSCTBeup49n2TlOCa+tXhpNAZmD1F936zBO8zQfxnE3dwwLybkANm WUAw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=q5fqXrb8; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id nd11-20020a170907628b00b0074156b2af5fsi7084104ejc.829.2022.09.06.15.48.42; Tue, 06 Sep 2022 15:49:08 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=q5fqXrb8; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229943AbiIFW1z (ORCPT + 99 others); Tue, 6 Sep 2022 18:27:55 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59556 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229627AbiIFW1x (ORCPT ); Tue, 6 Sep 2022 18:27:53 -0400 Received: from mail-qk1-x72a.google.com (mail-qk1-x72a.google.com [IPv6:2607:f8b0:4864:20::72a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id ADC21DF7A; Tue, 6 Sep 2022 15:27:52 -0700 (PDT) Received: by mail-qk1-x72a.google.com with SMTP id h27so9289745qkk.9; Tue, 06 Sep 2022 15:27:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:feedback-id:from:to:cc:subject:date; bh=0QAInJ0rO3zMboDJklVEn7XuhNzPndw7J1Dim+/9qYU=; b=q5fqXrb83oFF0SHKb5t4llQCJugKT3iuOfMKSlMiEURbJknWMLUg7UMbrauEDn8gkB YU+4Z5Auy4EYBPNyX0C5CpceW8p+xHj+9zWigB5J7nZCWwsPI/Y93+i8qrtxwLQWguiA FfFQFZBUKJbYTKpCKmiSR0eQOkquH29sZLWsWGGFEjwsteFEgc7MUiupsar0PmIM9Su4 u0hP+lJcZx67/dlodScBq7exYxJMLlSpHm6zGDk8D9OPX+T3Dms9y92uY+ZcA9WF0qcv wAqcKsjH+z4gfiLPbJJP63LfN20A3XLPnrFPfuPjnzg2sxg7S+MkIHxvDsbVhP4X7nex K3YA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:feedback-id:x-gm-message-state:from:to:cc :subject:date; bh=0QAInJ0rO3zMboDJklVEn7XuhNzPndw7J1Dim+/9qYU=; b=VK8c6Ocsb+2McojbU91vZ97YwBPo/P+9uIR9xlrtDHalgB9KmMEq7RctVEbv3E6eOK o1vKiwdSSfPlZzfvbA1Wrd1ogFV5hYbL/9YQskfb3BSop9HC2uJb+Y/icOc/Z8fKqMry mR4msXJv6awNx7tDeuhNt1ph/9+m70gmbmj5cfvg2SwtqYxhB4V7n3/sgRXhLe3CmQ8K ZKjbag63p2rJ1Se113T/NJ0eX+kJhdYq5CARQ7l1vkHlJvVYLTC60j4Bs/+RiK0RUSQz PppPPbiFSxr9MFlWhFAGFKtZqlvNdRRQbGQwwUSGE4CGFRnB5ErP3z8bm+wjsivgmo7D JXwg== X-Gm-Message-State: ACgBeo3H/bac+q18U/cqPNsbJMe0xBJN/I9HN7Nalr38SGBCc8wft6Bz 6MpzsElBTuqGPkXqAiUD8Ng= X-Received: by 2002:a05:620a:1468:b0:6bb:822d:2c48 with SMTP id j8-20020a05620a146800b006bb822d2c48mr709502qkl.393.1662503271853; Tue, 06 Sep 2022 15:27:51 -0700 (PDT) Received: from auth1-smtp.messagingengine.com (auth1-smtp.messagingengine.com. [66.111.4.227]) by smtp.gmail.com with ESMTPSA id q2-20020a05620a0d8200b006b555509398sm12967840qkl.136.2022.09.06.15.27.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 06 Sep 2022 15:27:51 -0700 (PDT) Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailauth.nyi.internal (Postfix) with ESMTP id A50D627C0054; Tue, 6 Sep 2022 18:27:50 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute2.internal (MEProxy); Tue, 06 Sep 2022 18:27:50 -0400 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrvdelledguddtucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepfffhvfevuffkfhggtggujgesthdtredttddtvdenucfhrhhomhepuehoqhhu nhcuhfgvnhhguceosghoqhhunhdrfhgvnhhgsehgmhgrihhlrdgtohhmqeenucggtffrrg htthgvrhhnpeehudfgudffffetuedtvdehueevledvhfelleeivedtgeeuhfegueeviedu ffeivdenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpe gsohhquhhnodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqdeiledvgeehtdei gedqudejjeekheehhedvqdgsohhquhhnrdhfvghngheppehgmhgrihhlrdgtohhmsehfih igmhgvrdhnrghmvg X-ME-Proxy: Feedback-ID: iad51458e:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 6 Sep 2022 18:27:49 -0400 (EDT) Date: Tue, 6 Sep 2022 15:26:33 -0700 From: Boqun Feng To: "Joel Fernandes (Google)" Cc: rcu@vger.kernel.org, linux-kernel@vger.kernel.org, rushikesh.s.kadam@intel.com, urezki@gmail.com, neeraj.iitr10@gmail.com, frederic@kernel.org, paulmck@kernel.org, rostedt@goodmis.org, vineeth@bitbyteword.org Subject: Re: [PATCH v5 03/18] rcu/tree: Use READ_ONCE() for lockless read of rnp->qsmask Message-ID: References: <20220901221720.1105021-1-joel@joelfernandes.org> <20220901221720.1105021-4-joel@joelfernandes.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20220901221720.1105021-4-joel@joelfernandes.org> X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Sep 01, 2022 at 10:17:05PM +0000, Joel Fernandes (Google) wrote: > The rnp->qsmask is locklessly accessed from rcutree_dying_cpu(). This > may help avoid load/store tearing due to concurrent access, KCSAN Nit: you can avoid only load tearing with READ_ONCE(). Regards, Boqun > issues, and preserve sanity of people reading the mask in tracing. > > Signed-off-by: Joel Fernandes (Google) > --- > kernel/rcu/tree.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c > index 0ca21ac0f064..5ec97e3f7468 100644 > --- a/kernel/rcu/tree.c > +++ b/kernel/rcu/tree.c > @@ -2106,7 +2106,7 @@ int rcutree_dying_cpu(unsigned int cpu) > if (!IS_ENABLED(CONFIG_HOTPLUG_CPU)) > return 0; > > - blkd = !!(rnp->qsmask & rdp->grpmask); > + blkd = !!(READ_ONCE(rnp->qsmask) & rdp->grpmask); > trace_rcu_grace_period(rcu_state.name, READ_ONCE(rnp->gp_seq), > blkd ? TPS("cpuofl-bgp") : TPS("cpuofl")); > return 0; > -- > 2.37.2.789.g6183377224-goog >