Received: by 2002:a05:6a11:4021:0:0:0:0 with SMTP id ky33csp233984pxb; Mon, 13 Sep 2021 17:55:04 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyK+p6ytruES3U70npKIQqqb8WZvwml2adPQCHy/umz99nBFgWeKKDXVdgjbT5qjyZ07UTg X-Received: by 2002:a17:906:aeda:: with SMTP id me26mr10520392ejb.83.1631580904517; Mon, 13 Sep 2021 17:55:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1631580904; cv=none; d=google.com; s=arc-20160816; b=p3shJ+XV4bJ/IiF+5ap9ncTig+Os4Bl0bFnBULtg0AM/kGwbhpU6Ik/9unrq+0S6Nz HHXhuV66XfnXjRNq++f1r5NZYEiLxRvwiV67U4FDs2KVzxNDMjqr/QZ+GHslHuMHSYyv ZipmP0x6cT68RTd5Xh5tHlLUEEqQmpKkyqZXzQyb9YoPv6X8jlPnIMew2vpN0BefcQ3Y nseL3z146RmHgrG2cke+jhFLLou3dAQS28IXnuLVsrM1TCsJAxLe8gTWBPXtCNOH2GEx jLjPpEzHLH2vynbuoH8qKHOAxSml+VsTDfMpT6cIMGt2pxdnSMHXJTZaNOiNm0s6Z8nD NT7w== 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-transfer-encoding :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:sender:dkim-signature; bh=YWQhTVi3cs3JhEQkXnoGLByH48od8NQU5b4m5WXkDH8=; b=jIKlKdSCeOmapp4E+OOkC7IlAhMr0yOlWxgZSt+P/YFv+EEzWdUYF/cHmajOrDxBB0 WxG8Q4RNTf49JrMByMsXXVhnITCBClWsfmowDLUv/XlqdnByCCCi68tugX51P1inTJwy OlI2VqKSQ8CCtSmzLErS/31WZsJEwJnO2ZRdh95HKj4k8+k0ZtlR67yAuwk7UpFfgl0P vD0M/oz7OxYl00B+mlWaw/5HRgtOt9vGdn1z5qmjS+MReNhYOH7lsweUw/vZI+qQA9ma OD/XlQEiiFivzalGmIY6V0fgoOHuhtuNslUPM/JvXEjqr+HmyBHRsOp1rM8rTgSH51CS mofA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=ajImzOPz; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 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 vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id q30si9072399edi.509.2021.09.13.17.54.41; Mon, 13 Sep 2021 17:55:04 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=ajImzOPz; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240093AbhIMSqf (ORCPT + 99 others); Mon, 13 Sep 2021 14:46:35 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49188 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236927AbhIMSqf (ORCPT ); Mon, 13 Sep 2021 14:46:35 -0400 Received: from mail-pf1-x42a.google.com (mail-pf1-x42a.google.com [IPv6:2607:f8b0:4864:20::42a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3CDD9C061574; Mon, 13 Sep 2021 11:45:19 -0700 (PDT) Received: by mail-pf1-x42a.google.com with SMTP id g14so9712977pfm.1; Mon, 13 Sep 2021 11:45:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-disposition:content-transfer-encoding:in-reply-to; bh=YWQhTVi3cs3JhEQkXnoGLByH48od8NQU5b4m5WXkDH8=; b=ajImzOPzIfdLH/DVFsbWet7ZSb4LKXdqbbLvOKr39wNgttg3S9EUsZh2Rhpg+Z1pAl O/qjf5fIPJ/GlnGp8VI95IZYWODrwbOiJAll9AUY9Z/mBaae9oApuuqBMBzmeqJ2TaJM 8Am5CkD+Nnzn2Ap9p7owSLLz00FZVNRxUhKzhT6lJ4LuYI4dzOcynuUi0uQAaF4WgDS0 pY4rrBTCTgrhDFuPE5JdAcMsfRVEuurYBEVXBxaydbgJuCKsgSmCaN2Wa4iHgAvnB0IE BHp/92Ogv//OqKQ1Ds3Wb8TUQMLhISBbltyE+D77K/yT9yjrionF6VAtBYdygTUSXsF4 MxLA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:sender:date:from:to:cc:subject:message-id :references:mime-version:content-disposition :content-transfer-encoding:in-reply-to; bh=YWQhTVi3cs3JhEQkXnoGLByH48od8NQU5b4m5WXkDH8=; b=yKlM+HbNv40f9veXSDYDVaFTlEr8FK/36Xefbd1jtU8FYwelk12pu0iT6CCjC3Vbv4 jch1Y/JdRmPi4Opd1F4wNFaDGJtOumlqn1oV+rTcltgGdqposI8RGR1PR3PWYioCe4qr 1z2nvYTA5q8C+AqFq345kp3C46To70ZWLZGzEd1XiKuAsXx9jEouVtF6nfaS55o3J4mT UCuQotxFtKKcmnSEFzWdC3aAbMEFAZYn6mxVeZ13ywN0GPRCLyeVFKBP5n2wv1Uph0Df LS5O5BSWOMT8qEUEmZiwx5E9AapsTR6NiKQ/KWT+Vj/JAyuCKynEyXodTEM5m10tVNzU BuZA== X-Gm-Message-State: AOAM533GOQeOHDBwUMdUWtY/eq3SDn2FooOSAlNDnO9donXQSHNaJQnq PX47emIVoFdC+WDo4gVaTXA= X-Received: by 2002:a63:3503:: with SMTP id c3mr12077422pga.393.1631558718525; Mon, 13 Sep 2021 11:45:18 -0700 (PDT) Received: from localhost (2603-800c-1a02-1bae-e24f-43ff-fee6-449f.res6.spectrum.com. [2603:800c:1a02:1bae:e24f:43ff:fee6:449f]) by smtp.gmail.com with ESMTPSA id x24sm7867469pfr.131.2021.09.13.11.45.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 13 Sep 2021 11:45:18 -0700 (PDT) Sender: Tejun Heo Date: Mon, 13 Sep 2021 08:45:16 -1000 From: Tejun Heo To: Waiman Long Cc: Zefan Li , Johannes Weiner , Juri Lelli , cgroups@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 1/2] cgroup: Fix incorrect warning from cgroup_apply_control_disable() Message-ID: References: <20210910024256.7615-1-longman@redhat.com> <125c4202-68d1-1a4e-03d6-2b18f0794ba4@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Sep 13, 2021 at 02:43:44PM -0400, Waiman Long wrote: > > The problem with percpu_ref_is_dying() is the fact that it becomes true > > after percpu_ref_exit() is called in css_free_rwork_fn() which has an > > RCU delay. If you want to catch the fact that kill_css() has been > > called, we can check the CSS_DYING flag which is set in kill_css() by > > commit 33c35aa481786 ("cgroup: Prevent kill_css() from being called more > > than once"). Will that be an acceptable alternative? > > Something like > > diff --git a/kernel/cgroup/cgroup.c b/kernel/cgroup/cgroup.c > index 881ce1470beb..851e54800ad8 100644 > --- a/kernel/cgroup/cgroup.c > +++ b/kernel/cgroup/cgroup.c > @@ -3140,6 +3140,9 @@ static void cgroup_apply_control_disable(struct cgroup > *cg > ??????????????????????? if (!css) > ??????????????????????????????? continue; > > +?????????????????????? if (css->flags & CSS_DYING) > +?????????????????????????????? continue; > + So, I don't think this would be correct. It is assumed that there are no dying csses when control reaches this point. The right fix is making sure that remount path clears up dying csses before calling into this path. Thanks. -- tejun