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 77393C3601A for ; Fri, 4 Apr 2025 01:11:10 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D6DC46B0007; Thu, 3 Apr 2025 21:11:06 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id D1EC06B0008; Thu, 3 Apr 2025 21:11:06 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B47B76B000A; Thu, 3 Apr 2025 21:11:06 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 941996B0007 for ; Thu, 3 Apr 2025 21:11:06 -0400 (EDT) Received: from smtpin17.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id C4C3F121B18 for ; Fri, 4 Apr 2025 01:11:07 +0000 (UTC) X-FDA: 83294582574.17.15185E7 Received: from mail-pl1-f172.google.com (mail-pl1-f172.google.com [209.85.214.172]) by imf01.hostedemail.com (Postfix) with ESMTP id E9A2640003 for ; Fri, 4 Apr 2025 01:11:05 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b="JBACD/RI"; spf=pass (imf01.hostedemail.com: domain of inwardvessel@gmail.com designates 209.85.214.172 as permitted sender) smtp.mailfrom=inwardvessel@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1743729066; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=FyiV7O0dNdMY8vgOXnK3Ve+6OewztvuN1tfM94bph58=; b=Va1wmlmA4eHIW4m3/VAKnqKkmBeAhette/KzyY6ZCAkv42ti7PwdWOzz1tS0v5SjUKu1gs zcY7lbXQM0gGEO16cXojPJlrWz5ePldTQ3sJDTF0h9NFUDTdmbHglIRTWIZutkf4W+ge66 TGgxX+6nPse/FeKgRiCELqI4XPRhBdI= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b="JBACD/RI"; spf=pass (imf01.hostedemail.com: domain of inwardvessel@gmail.com designates 209.85.214.172 as permitted sender) smtp.mailfrom=inwardvessel@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1743729066; a=rsa-sha256; cv=none; b=XAWS5q6NyvpzsuI1xOjALR5Vf+gOxj901i/m9qgix2osGAZg9NYSzJqKJMH4eklWXlYvOj QU0w3Sy3b8kH9tKLytno2yzlZ50/me0jclUdIfEkH99IWPfn0rmLJok85VhFNmwUurI8vK KQx/p4wyYvxEjkhcUgIv3hH1Qa8pA6M= Received: by mail-pl1-f172.google.com with SMTP id d9443c01a7336-223fb0f619dso16151175ad.1 for ; Thu, 03 Apr 2025 18:11:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1743729065; x=1744333865; darn=kvack.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=FyiV7O0dNdMY8vgOXnK3Ve+6OewztvuN1tfM94bph58=; b=JBACD/RIZGMiZoIoH2LT1dLWRZuggO/otKUBrKHyxsMBUEbcHYRk+nTDKfMlcbtAKb 40YIw1Wmpxrlw8Ls3UamUSB1gRK8ptBW2xPh6snflk0BH6j7Z2d7JNiiKOGIhsuA21H1 W95fYU3kmpPgYNH9qDj50BrQR4RwwaWwc6PF2SSx4BCBzSoaV1/JGcoF63Fh9T3aokkD PVujecRhHyS0XLicQsPcbQsgHqXnclIjEAIXh6DRBpeEG/n49wuWKZLuw9AALUloNs2N wA/I7GbVOOwcHKoAa4F1o1a8tbp02dvAKCFEKgchha6oIJNPsIAUf7vgwCMw1hKPjF3m nURw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743729065; x=1744333865; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=FyiV7O0dNdMY8vgOXnK3Ve+6OewztvuN1tfM94bph58=; b=Lxes+1YwzyzdebD4kYWI3XH656vKEUIQFCKwc47ubJnikJfySmKhQ2RCWj4N3oaB5g D4Xcgv9tTTMumaxxuDsqxVacccMXVzq7P624b0Rk7Jo790zgoCXBwraQuC9vPT8WnXM7 SB9+v5XxaJtzJp69InOq0TDPrsNWJvTwWm0+JaRJgmmVmDr8+KsI3SzYT/2Tf1q10L0d 3LluDCRncKlOXK+eQP7Yv/giSip0eBMmLBI3U9ZDDdc55K3Xl4QrH9FOGcVBiJzmdpw6 YaasHcA8jjvEYrmR2FXZq0hqd2YALUP+ughvdUlGtzarWVjPoUsS7aoIuHMQE9I9rFFp TX1A== X-Gm-Message-State: AOJu0YxsTQSqkqeLehtptfnv66LIxM+JcTAdr7EhhfmfV3ZUzDYrDL4B ziFyA4jJRkfeX/m+PyHPGPdb/zEpP/FKlWX2kgfXt6zRfEvKoPlr X-Gm-Gg: ASbGncvSOADeeQhhw3wwGBMvIRbHBtccIB2P/jYWL7ST4sJwOec4H3Eup/ONMzd9M0d PNOBRj4z/b9V0dshnIIRUdmvkTvRz/RZ00QFWH6DW5AiWGDEDyIBZ1k4+rYKNmtEaQS3KmO48ut vgDMDJ6RLviFSGIanEfEPHHy5qPMBZEU8xINxSQr7m7K00xz1j4zYfl+uZlF2uSSDIsiq4oMaan hrQZM2/c324Py7K9TEJDINNiHBuzITWO/k0fOV1lTtAQ18ChEdkn+qIlMCdb/x1MpMb8+f863SA 5wvO8d7nVapcHyGXfoM314dzywDGi7ebrD15vva8HBG2SNvT6Eq3AaLHd+Eb7k+C1g/QRuke X-Google-Smtp-Source: AGHT+IEsnhjiqZvK32w8B2KDYISHE9qbYkcOiXt+WlUo2/SYfwttWGmA9UkC1XbE95jC7l8EqhiqxA== X-Received: by 2002:a17:902:c40e:b0:224:2717:798d with SMTP id d9443c01a7336-22a8a0b4990mr17306385ad.50.1743729064765; Thu, 03 Apr 2025 18:11:04 -0700 (PDT) Received: from jpkobryn-fedora-PF5CFKNC.thefacebook.com ([2620:10d:c090:500::7:9b28]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-229785ad9a0sm21268675ad.39.2025.04.03.18.11.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 03 Apr 2025 18:11:04 -0700 (PDT) From: JP Kobryn To: tj@kernel.org, shakeel.butt@linux.dev, yosryahmed@google.com, mkoutny@suse.com, hannes@cmpxchg.org, akpm@linux-foundation.org Cc: linux-mm@kvack.org, cgroups@vger.kernel.org, kernel-team@meta.com Subject: [PATCH v4 2/5] cgroup: add helper for checking when css is cgroup::self Date: Thu, 3 Apr 2025 18:10:47 -0700 Message-ID: <20250404011050.121777-3-inwardvessel@gmail.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250404011050.121777-1-inwardvessel@gmail.com> References: <20250404011050.121777-1-inwardvessel@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E9A2640003 X-Rspam-User: X-Rspamd-Server: rspam02 X-Stat-Signature: x111kyhggh47kw3wkdj16d1cjqtmdr1d X-HE-Tag: 1743729065-374587 X-HE-Meta: U2FsdGVkX18bUAecRADllRXyGiHbAlCGr0H6aC9fXGasKSvGV+Cd6cYtgE6qywUvs4TVDkmoXcxeCQDl+Lt6H/l6Z/0z6drXEg4FdtmxKFgvdWTw2nGzuNmg16LYnRk9+dMkocSJlVSIuFkya3qRBN4XrNXDw1V5xfPKdy5m590b2efyoE4fBM1YRln+Ye6Tm0afn3QAHv89u6Toir6CPHo+9ZZKRjIVXmsKFdOzWcyW9qII/Qcw1GhtQIot3iznQmDKv/goIxxiEFetqPduWbmWZNhy+BuW+8YVldvwGVXK7T4lrd9FPED/0U1n4GL1efLGpJJtJTzGcJwzJMldRqqZcPpCGSZZiY6CMb1VegMYf4nmEe+QXg1FI8B5OHcGbeWLPbM2ZADG2Wr7xGGM54DQGOL92gTpFk/ufVilUNMAiuMyjVByYWqKhMOicstHVeFR1eSr5yOBhbzwXtPA+abtejmtQ2oDwRkUMqS8fZL6nBK0zS5CuDp0ObWu8qw1Qjv+Lc12u3RbAVA6JeBu447muhV0TRex0y7XhDZ/weMM9ihuSrv3kjEY0PUGqk3jCcJ8OQilbUDMvG0AlKc5o9Tc9Q5Oqcxj2l3tRteQ7eav4SKKCvEj5bhDxBdpfvmZ7EKIsqTOPTnvGytxy64iv1Ne5vmcZZD4Q3e+3P5nFFLlxAC3mUen+UGX/utUj90PAMYD9hbzSLvAvwuuswbMgq28L93tGgT78YTmxFkidSEtIuTSNlA0ZFeT0EWiSPvBJCx7wH9PuvqtM7USJBmg6dECJzAzjj0x92eOrIyFxVCe67PQoFtGyIlYLZPj6D3KbH5C8WiZaqWAnYsMJqS66axYqeJFEYFnI7KvrKsh4MMAs7jQX770yHEmsCxS31/q81dSjLCwMzbXTU74eUxxrSX7lJDJVE8q4JkIkUIlVV8Fp/NkDo/+4OlOzVYxIdCvOWp0AqKof6u+bZ4CH+G tBDjEVSr andd+Gc1b0FXwouKwDko2Qut7ionZl66xuKMPazepK57hd/hNC5YZksAxZ10WJa92gb2aNrtjjtDntFhg15BdSVAZFcOkVATmF+UoHuJyJSH1kNn2aIhO17vVClyIMFGlQsH9711koEHoNDGqFTd0N8l5GOxYTBdssdl7qEBluzvC/2bDJsjy69TAeZERlZjAFjFRRXSZjQpcF9fVqgdopcndW8TNuNLquF/QXG9idKMOE8FGIFNrcVyFo0cYhaf0Pt5Ib/oF+UGy7+/1fQe/NuCwkZdD6pLyGLfOOnWLNXF51TQyWwAQ09T/vrgJPbBG4RmgBGcX68Op4YBj36bjwHzEVfT1jiMYceiXDE9DqeZxiNf6OzJNHUh/2ZaoqHUxzQM4 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: The cgroup struct has a css field called "self". The main difference between this css and the others found in the cgroup::subsys array is that cgroup::self has a NULL subsystem pointer. There are several places where checks are performed to determine whether the css in question is cgroup::self or not. Instead of accessing css->ss directly, introduce a helper function that shows the intent and use where applicable. Signed-off-by: JP Kobryn --- include/linux/cgroup.h | 5 +++++ kernel/cgroup/cgroup.c | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/include/linux/cgroup.h b/include/linux/cgroup.h index 28e999f2c642..7c120efd5e49 100644 --- a/include/linux/cgroup.h +++ b/include/linux/cgroup.h @@ -347,6 +347,11 @@ static inline bool css_is_dying(struct cgroup_subsys_state *css) return !(css->flags & CSS_NO_REF) && percpu_ref_is_dying(&css->refcnt); } +static inline bool css_is_cgroup(struct cgroup_subsys_state *css) +{ + return css->ss == NULL; +} + static inline void cgroup_get(struct cgroup *cgrp) { css_get(&cgrp->self); diff --git a/kernel/cgroup/cgroup.c b/kernel/cgroup/cgroup.c index 77349d07b117..00eb882dc6e7 100644 --- a/kernel/cgroup/cgroup.c +++ b/kernel/cgroup/cgroup.c @@ -1719,7 +1719,7 @@ static void css_clear_dir(struct cgroup_subsys_state *css) css->flags &= ~CSS_VISIBLE; - if (!css->ss) { + if (css_is_cgroup(css)) { if (cgroup_on_dfl(cgrp)) { cgroup_addrm_files(css, cgrp, cgroup_base_files, false); @@ -1751,7 +1751,7 @@ static int css_populate_dir(struct cgroup_subsys_state *css) if (css->flags & CSS_VISIBLE) return 0; - if (!css->ss) { + if (css_is_cgroup(css)) { if (cgroup_on_dfl(cgrp)) { ret = cgroup_addrm_files(css, cgrp, cgroup_base_files, true); -- 2.47.1