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 68DE9D64098 for ; Fri, 8 Nov 2024 22:21:17 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id DC7ED6B008A; Fri, 8 Nov 2024 17:21:16 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id D78656B0098; Fri, 8 Nov 2024 17:21:16 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id C40506B00A2; Fri, 8 Nov 2024 17:21:16 -0500 (EST) 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 9EED36B0098 for ; Fri, 8 Nov 2024 17:21:16 -0500 (EST) Received: from smtpin05.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 64D9D1A0F92 for ; Fri, 8 Nov 2024 22:21:16 +0000 (UTC) X-FDA: 82764348870.05.4E04E94 Received: from out-172.mta0.migadu.com (out-172.mta0.migadu.com [91.218.175.172]) by imf08.hostedemail.com (Postfix) with ESMTP id B23F4160023 for ; Fri, 8 Nov 2024 22:20:49 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=iWtoo3Vg; spf=pass (imf08.hostedemail.com: domain of shakeel.butt@linux.dev designates 91.218.175.172 as permitted sender) smtp.mailfrom=shakeel.butt@linux.dev; dmarc=pass (policy=none) header.from=linux.dev ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1731104305; 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=z1Ptippr8U80MLfwMylqbY3GBCBNohqHFsVTsoCWnoA=; b=TvNdZTMbqA6dfNkNSz6d33CDPqJ1q0PyWQU04EI2j15E22jBNkIGW18ly5Cp2lG8TuSZ9h TtZQR65jBjFjKH2SjixVOyH5RCyxD7n0C/fIAcrGQZqy6GP3a2g/zARQ5VnpwYRpuiiDd4 u9+faQ8nUCSpjSm31Fi6/6izr+ZaBLs= ARC-Authentication-Results: i=1; imf08.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=iWtoo3Vg; spf=pass (imf08.hostedemail.com: domain of shakeel.butt@linux.dev designates 91.218.175.172 as permitted sender) smtp.mailfrom=shakeel.butt@linux.dev; dmarc=pass (policy=none) header.from=linux.dev ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1731104305; a=rsa-sha256; cv=none; b=S1LKUXFsxHtQaI/VjPW8TlbkjUMZ7aXTj1C4wxDFF4RsTH+v+ogA7N8AFl8nIoh+rRlofY 5XoaUFeB9Gm7hBeQvj3Rfqm5VGsMl8/BzVhKPb2ob3OpH2VXTPnMGDisf3AO0nO0F6f3Gt 15O45q5OLw423eczV7eeLPvGuO5Lh1I= Date: Fri, 8 Nov 2024 14:21:05 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1731104472; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=z1Ptippr8U80MLfwMylqbY3GBCBNohqHFsVTsoCWnoA=; b=iWtoo3VgzB8fTxFnKYWHljRWnkmFJTCz26g6g+9xm75hYdSW/g+rEIWhqH/g25N/2+5CIl Jua0e1RhWJuPVGRKSkERqCMiwaZj+ooMJGAXd42T6o7SEy7Z56EnN1kliV7WNHvDzB4YYo 8G19e/uBy8zTA1ZmcmMOgYpCWnmjIN0= X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Shakeel Butt To: Joshua Hahn Cc: hannes@cmpxchg.org, mhocko@kernel.org, roman.gushchin@linux.dev, muchun.song@linux.dev, akpm@linux-foundation.org, cgroups@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, kernel-team@meta.com Subject: Re: [PATCH 1/3] memcg/hugetlb: Introduce memcg_accounts_hugetlb Message-ID: References: <20241108212946.2642085-1-joshua.hahnjy@gmail.com> <20241108212946.2642085-2-joshua.hahnjy@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20241108212946.2642085-2-joshua.hahnjy@gmail.com> X-Migadu-Flow: FLOW_OUT X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: B23F4160023 X-Stat-Signature: ihcf6xnjyxw3yx1mefoe7wdkbaehf8y4 X-Rspam-User: X-HE-Tag: 1731104449-421064 X-HE-Meta: U2FsdGVkX18WSQiWm52u70Jo7YldGtQb36Npkp9lQv9IoyqC4dMxOnQfXKGmkMb91MYClFXGbuBtvdbEbkYNQt/16uk5NV+BHpQn79pMOJZh+aVVwAKCgwHE/PqKe43VGxvdCI1f/2yb42bb6sYvYfVpoaWRZdkAhkQ9byCHJaKgKjQmLm4Ia6uNtRzqPhxlE1OmEX2JCPBZeVug8w24r31KQQrdsmWxRi5ZSuJVQtIwmmfy+XbAJDdWt+tUzc9MXkVm9LzGQ0A8CIUKTXvNlrW5fA1NLmMx9OQWzf4xM5tRuLRD4fZRigzU0nZ6cE2SEyp7Gwskx3BVIqwbbDkyLojpSmYpPvP2B1LuAacDoOA3Z2f4dmfNskA1Y70YnAaMbJJ7sjoX5Spc74AznsItn1cy+OZN0K5QIYt9VEb4eJaIhF4IvR0H8x+DgBucykj10ggu2YEM283ZokPTIlCiQDCIeQbv8ZLIyntr5PgNDNick1sqq5bVe1PoIiX4dnF7g76M0ZwlHMRPeE8M3rfhAaOXjF2V0a92gfyMc5qm3gNIsLvS8jtws2xzxpqJRN0zd+DMz0ajQUuT2go7CWPJ88WwfZSrPe8KIc7YwLTSitBLk7JlpZoyY6Erw2PZPy0Wzm0dyLAqOA5wOIeHmynQom7tM0ykCmK5zSI1Olk8+UiuGrQ7X5ObpO/xtooS4l6Z+Td4bGzYkVlOCiU2J/rMYMTgJBvuL1uvLSGzDTcNj8Z6iwK1seRUSj8+TqMLHWZ6ZKq9JA+T0wxUX1rUqAu3o8TqIHOyBVAXI/uivV0CoPw9hAijgBiUJtTXb9NjpfXzSL3lyLug6anQaBexhyansQETdhBnLlZv3vBNDmqQj4gyh/eNw2AxGQGEI9B0MqXJXq747qVj53odrxf5kE/1e2Jv+EKnkjONLy2aypPMpnpYA7DhBkHBKtV8xZ+gDDzblWI29y52/jTABsn3Ewy XMP+7oGb PDSrSPuBDf8ccLwV6LFLKcesisH3Xn8QHJRf9nKr/9y7XdsBUOMkwzADbv4bJXvBMwVJvkYFnPzZpkY/PFvvTm/+UHSgE4ust0b7H3InDmP2PBeLA/5GPTGztA66/Hs0bdHRFhjDS9rkqaozHZd+AobAY1gHkNEJ3XbEM4tlw/v2AFlexiMjAco9ZoYbyU7pFqTf2VgGruMZolg2xYA8Jairtyr52+SowBgL9+DlsHRXh5368Td9OBRxL7c+aWpbK4DntcWz1cMY0q8e3Jaa4fshKFjbDTwt2GwJ2 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 Fri, Nov 08, 2024 at 01:29:44PM -0800, Joshua Hahn wrote: > This patch isolates the check for whether memcg accounts hugetlb. > This condition can only be true if the memcg mount option > memory_hugetlb_accounting is on, which includes hugetlb usage > in memory.current. > > Signed-off-by: Joshua Hahn > > --- > mm/memcontrol.c | 17 ++++++++++++++--- > 1 file changed, 14 insertions(+), 3 deletions(-) > > diff --git a/mm/memcontrol.c b/mm/memcontrol.c > index f3a9653cef0e..97f63ec9c9fb 100644 > --- a/mm/memcontrol.c > +++ b/mm/memcontrol.c > @@ -1425,6 +1425,9 @@ unsigned long memcg_page_state_local_output(struct mem_cgroup *memcg, int item) > memcg_page_state_output_unit(item); > } > > +/* Forward declaration */ > +bool memcg_accounts_hugetlb(void); No need for forward declaration. Just define it here and make it static. > + > static void memcg_stat_format(struct mem_cgroup *memcg, struct seq_buf *s) > { > int i; > @@ -1446,7 +1449,7 @@ static void memcg_stat_format(struct mem_cgroup *memcg, struct seq_buf *s) > > #ifdef CONFIG_HUGETLB_PAGE > if (unlikely(memory_stats[i].idx == NR_HUGETLB) && > - !(cgrp_dfl_root.flags & CGRP_ROOT_MEMORY_HUGETLB_ACCOUNTING)) > + !memcg_accounts_hugetlb()) > continue; > #endif > size = memcg_page_state_output(memcg, memory_stats[i].idx); > @@ -4483,6 +4486,15 @@ int __mem_cgroup_charge(struct folio *folio, struct mm_struct *mm, gfp_t gfp) > return ret; > } > > +bool memcg_accounts_hugetlb(void) > +{ > +#ifdef CONFIG_HUGETLB_PAGE > + return cgrp_dfl_root.flags & CGRP_ROOT_MEMORY_HUGETLB_ACCOUNTING; > +#else > + return false; > +#endif > +} > + > /** > * mem_cgroup_hugetlb_try_charge - try to charge the memcg for a hugetlb folio > * @memcg: memcg to charge. > @@ -4508,8 +4520,7 @@ int mem_cgroup_hugetlb_try_charge(struct mem_cgroup *memcg, gfp_t gfp, > * but do not attempt to commit charge later (or cancel on error) either. > */ > if (mem_cgroup_disabled() || !memcg || > - !cgroup_subsys_on_dfl(memory_cgrp_subsys) || > - !(cgrp_dfl_root.flags & CGRP_ROOT_MEMORY_HUGETLB_ACCOUNTING)) > + !cgroup_subsys_on_dfl(memory_cgrp_subsys) || !memcg_accounts_hugetlb()) > return -EOPNOTSUPP; > > if (try_charge(memcg, gfp, nr_pages)) > -- > 2.43.5 >