From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1C682C36010 for ; Fri, 4 Apr 2025 20:28:13 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4506E6B000D; Fri, 4 Apr 2025 16:28:12 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 401A36B0010; Fri, 4 Apr 2025 16:28:12 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2C6B46B0012; Fri, 4 Apr 2025 16:28:12 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 0E3196B000D for ; Fri, 4 Apr 2025 16:28:12 -0400 (EDT) Received: from smtpin29.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id CE807B94A1 for ; Fri, 4 Apr 2025 20:28:12 +0000 (UTC) X-FDA: 83297498424.29.6616712 Received: from tor.source.kernel.org (tor.source.kernel.org [172.105.4.254]) by imf21.hostedemail.com (Postfix) with ESMTP id 5C4851C000C for ; Fri, 4 Apr 2025 20:28:11 +0000 (UTC) Authentication-Results: imf21.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=gY12MSrY; spf=pass (imf21.hostedemail.com: domain of tj@kernel.org designates 172.105.4.254 as permitted sender) smtp.mailfrom=tj@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1743798491; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=U3lCpudQFKBX6/44FRuPGba+uT3gmBlJo9kApSZZj8o=; b=25X4X0SuFKSAXeMNrD5zxCW3Fho+oYEI4UPBRY9PE+DjmvMihc7KThP/IsbRQOJwQSt3RR 3koAPdlgdthwnXH1uNrQSZ3Z9gYndL24Q30mWk7lviLqzFKT4PQJh0l7OPBH2zBrBcxZT/ Ouw2kGOfqdos8tWMa2Y6xxpZm8aPDgg= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1743798491; a=rsa-sha256; cv=none; b=dU+vcfnbBxYXGtT/mKlz7TbqGXcjvZBwKDHv9F7kqyAvjkwxHo1d7eL13oTUcBinvJ3EXR IigNZFw7cPUwI7jCUmb3+C1OR9HOtbsneXeU/1lm8ktR4fsNGzPEbt0hhoJNKKTh9KYadX d7+AfN5KrLVMQLQqeZ0DgtMfc2YYzjE= ARC-Authentication-Results: i=1; imf21.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=gY12MSrY; spf=pass (imf21.hostedemail.com: domain of tj@kernel.org designates 172.105.4.254 as permitted sender) smtp.mailfrom=tj@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by tor.source.kernel.org (Postfix) with ESMTP id 2EDEE61135; Fri, 4 Apr 2025 20:28:03 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 34082C4CEDD; Fri, 4 Apr 2025 20:28:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1743798490; bh=DqzdL/iprk03uQavgGf8iocfOIxoRFPwA6bxRoFrnWQ=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=gY12MSrYiF7ZFPGPWuBSsRYuDDQQU/MldkijLY99i6TgTrw5qv+PeKD7HGMtHqk6H 0icKww8oZ4Kxl3ZPt3ULLaNh/gNQb0XZlJC12DOwrujgvJ8NCM3CXm+6+sBI+gZFVx a/WGytXD8jk04DYQ8TTWbTisWpTT2Kim2T6pUeqaBiQ8QwXGnycDQY1Wqshr19Ys4P R3HjmwQ7npqV97H7q2xq5Jj6jXC9T+MHcL3Y9S2nQzOFsz4SQ8qpxKCVW1IANvaTNT AXD8whfGpIPmFuVsLxUMrvMLgivDVIgxA7rA5jil6VO3qIqOOgi3eqx85CzrL3fits WqBgH97kGMXyg== Date: Fri, 4 Apr 2025 10:28:09 -1000 From: Tejun Heo To: JP Kobryn Cc: shakeel.butt@linux.dev, yosryahmed@google.com, mkoutny@suse.com, hannes@cmpxchg.org, akpm@linux-foundation.org, linux-mm@kvack.org, cgroups@vger.kernel.org, kernel-team@meta.com Subject: Re: [PATCH v4 5/5] cgroup: use subsystem-specific rstat locks to avoid contention Message-ID: References: <20250404011050.121777-1-inwardvessel@gmail.com> <20250404011050.121777-6-inwardvessel@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20250404011050.121777-6-inwardvessel@gmail.com> X-Stat-Signature: krh8e3q6dairn9uw5ugkfokk8ad57869 X-Rspam-User: X-Rspamd-Queue-Id: 5C4851C000C X-Rspamd-Server: rspam08 X-HE-Tag: 1743798491-146883 X-HE-Meta: U2FsdGVkX1/3J9oNYsvF+Sb06nSmdERuVu+78NLcNQRAnMP5X+ZXuHJKL79ua2y1t1Sq89AXV49KFcsGhnHbAJX2xg73nnE/4J1lLdEiStqdTM+LYsI8tlEUaJWC1O/yIqIWiqNnWSnISFPt4i9RuCYMl3MnypfEfH0kZDcbbnE+F0PRCWN5vofl5fqU49R1mzSAGtmKAlEebiYYa5h9lZpzuQItzI1/B2XYzGOCOgJ2YAxG0WxGVAvO+g9o5lom1tK0i5+t25N/pzXnmQDOZkveQetKyCsTWCxKpcrOBbOb5cSgFQoe1B/Lhra8iV2rhh77T4w4NjFbPVHIWv6edq9ByH9hwB1i/4+eZm5iB9jRDeyZ4u+fYSA2feC6h/PCXQWvTkJ7mWnkOkWRyDq2OuQRbnRdpv5l6uqrBhrPCTyfyiCyKQd5kDWBv0t4GIMRS8ynIWovUl4RUpjWSxYBcWDtNOprangiXLSGGzUOfjewzUZfm8nPxtDTwe8OIG+dnFQfLSxqnH/ncrIMneIGEKKPPdcwrBRGXLoMEydCF1ByeVUzrebgN1OwrsQWuxLAbZPa0et+Z9ACl7zgO0VytY+vZhhCy7cg7eLfrlDoECZ0cquuWq3v+IpCOESA3EKVTVxW2ClJfcnnd3SjqUd3SIzG0oxANZ0R0r+wZ4U82LvYwPDxT7ss/TCkBJQVaajdVShsNgUkonfTQ0twKzjfcA4GWFOmfVHScmm+GoStYmQ7XwWm8xHbqT+JYkZoN7ftvUbhNckv7+i5iXFdTOeoBu9JQAK0ywC/rJ8xiXMsd+rYJHXTwnU1G/aD1dN6Dz8cLChyavkbfdBJdyrLFJHkYLdeB71jGaen/OGz3LuiFU6eI0pzLRuKNYy0k1J75QJwwCpyWqNdIG0= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Thu, Apr 03, 2025 at 06:10:50PM -0700, JP Kobryn wrote: > It is possible to eliminate contention between subsystems when > updating/flushing stats by using subsystem-specific locks. Let the existing > rstat locks be dedicated to the cgroup base stats and rename them to > reflect that. Add similar locks to the cgroup_subsys struct for use with > individual subsystems. > > Lock initialization is done in the new function ss_rstat_init(ss) which > replaces cgroup_rstat_boot(void). If NULL is passed to this function, the > global base stat locks will be initialized. Otherwise, the subsystem locks > will be initialized. > > Change the existing lock helper functions to accept a reference to a css. > Then within these functions, conditionally select the appropriate locks > based on the subsystem affiliation of the given css. Add helper functions > for this selection routine to avoid repeated code. > > Signed-off-by: JP Kobryn 4-5 look fine to me. I'll wait for others to chime in before applying. Thanks. -- tejun