Received: by 2002:a05:7412:8d10:b0:f3:1519:9f41 with SMTP id bj16csp2023538rdb; Thu, 7 Dec 2023 16:17:36 -0800 (PST) X-Google-Smtp-Source: AGHT+IF9PTNxqEjyLH2MhEZ+YGPpKpKJHjI2sM3MLKOu0N8mdwKNtYG8nlnoxSL9yZmgiWoE6FVL X-Received: by 2002:a92:d8c3:0:b0:35d:6d4f:1058 with SMTP id l3-20020a92d8c3000000b0035d6d4f1058mr3779393ilo.4.1701994656572; Thu, 07 Dec 2023 16:17:36 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701994656; cv=none; d=google.com; s=arc-20160816; b=RhJkaiztTIfYAzTDeux7fxiQJadqQloFkYBnrA9nGPeAcuRJnvIj01qFLnyIDfd+PA veicdY+2v+71vdDbdCY6IEsrkc0O5FwekbDchll76oZSRv15rxGqTmrEc69JahPSqHPt gnu/4+bVRxdHVdVdkwXxlTd8nJMIJOGYeHfAXDSvqKEYsf6I4CdmDJ3/QrZNrzDF4x7Y 0KSPF4Op9E1Yfwhppv2lkgA53vMgs5SRBroLrC3fJo2GEtnicOQI+TC/Kwk9erlKNk0G h4jqgcrS0Ve9R8SOajjFLQtoBusHK/efDYvURzdVfncsp4ioZYLtXuhf5xze0WMRgfnz Kojw== 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:sender:dkim-signature; bh=fYaCvNQnFX8gSshhD0U4TjEw0tlZoDuU2wJUbPArFf8=; fh=/a/DwIbGLwkp5eRD37SQL0wxUFUKsfBwXaXo6Pm61gw=; b=yBM8wJzsPTAyEXV4QRa06gJwKKWcHTB3IWU71KM96wSDuTtbDAPqBnp/U753t6iJTB Ez4Na4WgDRDSinNgL3zj0W3PMH6ASqme/B4H/DAaWRkoR/7AMQDh9KAnzIIggGpbAVSl L3w/jWMfqJhw0BTiayrfNfsw8JMtS05U/KrA0ah19ga+XsBPSan2lMba4b6dozmMD9/X yxXcnEFc5lMW/dL/HTay7iX5xCNtB5aVS7B/9RF8YS8Cn6zHYUbh25kJs7t9YKR4Pu+x 8jQAtV01jDYXXTyR2KaW9iQX3Aeqy9PTCoLP7qDtc937KCrMUKmnv4sQLYni29FeGwUF BgVw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=WIh5cGTz; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:2 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from agentk.vger.email (agentk.vger.email. [2620:137:e000::3:2]) by mx.google.com with ESMTPS id d16-20020a056a0010d000b006ce4f45bf67si520777pfu.278.2023.12.07.16.17.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 Dec 2023 16:17:36 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:2 as permitted sender) client-ip=2620:137:e000::3:2; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=WIh5cGTz; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:2 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by agentk.vger.email (Postfix) with ESMTP id 2A2068082DE7; Thu, 7 Dec 2023 16:17:34 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at agentk.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235824AbjLHARU (ORCPT + 99 others); Thu, 7 Dec 2023 19:17:20 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51848 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235655AbjLHAQ7 (ORCPT ); Thu, 7 Dec 2023 19:16:59 -0500 Received: from mail-pg1-x52c.google.com (mail-pg1-x52c.google.com [IPv6:2607:f8b0:4864:20::52c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 083EF30F3; Thu, 7 Dec 2023 16:16:32 -0800 (PST) Received: by mail-pg1-x52c.google.com with SMTP id 41be03b00d2f7-5c66418decaso1123416a12.3; Thu, 07 Dec 2023 16:16:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1701994592; x=1702599392; darn=vger.kernel.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:sender:from:to:cc:subject:date:message-id :reply-to; bh=fYaCvNQnFX8gSshhD0U4TjEw0tlZoDuU2wJUbPArFf8=; b=WIh5cGTz09wSE4+SUXHkBH+VTwBndYOxGzkeozcvyKdfK/K3Fsu0armv9KwvSU+vYW Uk7gEKBCTVZVBqnDIFp72D4fB1eBzO6FfQa2N+2AUMNai86Wogqznr/AkKTqgqe5wmwI Wqj4VIjlNyCz5uVP+USRejBrsW75pY4YVNNEM7DPOnx7LhFGBMg/UFf3+FBc8cUzgtRU as7lglpHrB7/0l/ehUbCYm5ibcQLtBzTpPCQNx6y79yV5Cz0LuN10CQamYsD0vYGqJiY 3mLp58cVQ2QnhWC2ZeGSNwb+g+S3lmYmgC7Jy70JjTMdhGiF6iD+50bEG9e7GuUZTKPG Bwmw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701994592; x=1702599392; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:sender:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=fYaCvNQnFX8gSshhD0U4TjEw0tlZoDuU2wJUbPArFf8=; b=w6XjlQtxBkiQZhKs1cunCI1AKhoGNv2mACktOFhN/quAb/g9eXpuvKHDkzyKH+39u7 4qa1rKlJGEsQ9Hd0101F3kERG+5J5msZgS++Wmls+If1l2z2tiGjP78ry9bKkEhLjFoj 1pdLi1UL24QtuN6b+ZU/upMt1agy25PCkj1acaCAugp6CbS3tTYg2i9NlQLfCgIn4Uik UggcBAL1HIi7zwAyBWTBmMKGWnpk3uOQ8qBPDQ2FFFCC5pIB5/T74MNB0mkhO3hw5gto /zE5u+cPhYkNd1/ayxPfbThxCi5ZFJnWdYLTpqrQhX5JsU+e1mSvurBL3rfRGX2vn2ac 1UuQ== X-Gm-Message-State: AOJu0Yx9pLpVC7DqHUqob5eCwQ44Sj4oX/VYdSrhjLAS+MlPzGOlHHyv HZI47Zw4wXGpJUjl3jp4Ar0= X-Received: by 2002:a17:903:191:b0:1d0:a53e:263a with SMTP id z17-20020a170903019100b001d0a53e263amr3271941plg.109.1701994592059; Thu, 07 Dec 2023 16:16:32 -0800 (PST) Received: from localhost (dhcp-72-253-202-210.hawaiiantel.net. [72.253.202.210]) by smtp.gmail.com with ESMTPSA id ba1-20020a170902720100b001d09c539c95sm403131plb.90.2023.12.07.16.16.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 Dec 2023 16:16:31 -0800 (PST) Sender: Tejun Heo Date: Thu, 7 Dec 2023 14:16:30 -1000 From: Tejun Heo To: Changwoo Min Cc: kernel-dev@igalia.com, andrea.righi@canonical.com, andrii@kernel.org, ast@kernel.org, bpf@vger.kernel.org, brho@google.com, bristot@redhat.com, bsegall@google.com, changwoo@igalia.com, daniel@iogearbox.net, derkling@google.com, dietmar.eggemann@arm.com, dschatzberg@meta.com, dskarlat@cs.cmu.edu, dvernet@meta.com, haoluo@google.com, himadrics@inria.fr, joshdon@google.com, juri.lelli@redhat.com, kernel-team@meta.com, linux-kernel@vger.kernel.org, martin.lau@kernel.org, memxor@gmail.com, mgorman@suse.de, mingo@redhat.com, peterz@infradead.org, pjt@google.com, riel@surriel.com, rostedt@goodmis.org, torvalds@linux-foundation.org, vincent.guittot@linaro.org, vschneid@redhat.com Subject: Re: [PATCH] scx: set p->scx.ops_state using atomic_long_set_release Message-ID: References: <20231111024835.2164816-13-tj@kernel.org> <20231207020459.117365-1-changwoo@igalia.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20231207020459.117365-1-changwoo@igalia.com> X-Spam-Status: No, score=-1.0 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on agentk.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (agentk.vger.email [0.0.0.0]); Thu, 07 Dec 2023 16:17:34 -0800 (PST) Hello, On Thu, Dec 07, 2023 at 11:04:59AM +0900, Changwoo Min wrote: > p->scx.ops_state should be updated using the release semantics, > atomic_long_set_release(), because it is read using > atomic_long_read_acquire() at ops_dequeue() and wait_ops_state(). > --- > kernel/sched/ext.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/kernel/sched/ext.c b/kernel/sched/ext.c > index 53ee906aa2b6..3a40ca2007b6 100644 > --- a/kernel/sched/ext.c > +++ b/kernel/sched/ext.c > @@ -881,7 +881,7 @@ static void do_enqueue_task(struct rq *rq, struct task_struct *p, u64 enq_flags, > qseq = rq->scx.ops_qseq++ << SCX_OPSS_QSEQ_SHIFT; > > WARN_ON_ONCE(atomic_long_read(&p->scx.ops_state) != SCX_OPSS_NONE); > - atomic_long_set(&p->scx.ops_state, SCX_OPSS_QUEUEING | qseq); > + atomic_long_set_release(&p->scx.ops_state, SCX_OPSS_QUEUEING | qseq); atomic_long_load_acquire() are used when waiting the transitions out of QUEUEING and DISPATCHING states. ie. the interlocking between writer and reader is necessary only when transitioning out of those states. In the above, @p is going into QUEUEING and release/acquire isn't necessary. Selectively using them is kinda subtle but it's less confusing to keep it that way, I think. Thanks. -- tejun