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 4E219E68944 for ; Thu, 31 Oct 2024 08:12:52 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D90F66B0089; Thu, 31 Oct 2024 04:12:51 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id D3FC96B0093; Thu, 31 Oct 2024 04:12:51 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id BE09C6B0095; Thu, 31 Oct 2024 04:12:51 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 9FFB26B0089 for ; Thu, 31 Oct 2024 04:12:51 -0400 (EDT) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 2CF4CC1305 for ; Thu, 31 Oct 2024 08:12:51 +0000 (UTC) X-FDA: 82733180544.24.1672060 Received: from mail-ed1-f41.google.com (mail-ed1-f41.google.com [209.85.208.41]) by imf21.hostedemail.com (Postfix) with ESMTP id 2BFB81C0003 for ; Thu, 31 Oct 2024 08:11:57 +0000 (UTC) Authentication-Results: imf21.hostedemail.com; dkim=pass header.d=suse.com header.s=google header.b=fYaENgQR; spf=pass (imf21.hostedemail.com: domain of mhocko@suse.com designates 209.85.208.41 as permitted sender) smtp.mailfrom=mhocko@suse.com; dmarc=pass (policy=quarantine) header.from=suse.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1730362209; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=1NsFGdhFHt7vNHkeF4Op7bN0bdu6mqlOlf3mw5K16Yo=; b=u5gbBXnFgA6RKOENZwYW2lGGxDrUlIlPhJE8tiPWqyWiviUGzrDbFRH3w6pqHkfMB2c5ry CYWBJqrDxFpwjhLfwoK9ZFf+r1WUvXSuMITUTIko4nY7w9550n3jPK9bWmki0fKo0Psv87 f/gd56Qed+7RdWOwopyFk5Szc06Fdpk= ARC-Authentication-Results: i=1; imf21.hostedemail.com; dkim=pass header.d=suse.com header.s=google header.b=fYaENgQR; spf=pass (imf21.hostedemail.com: domain of mhocko@suse.com designates 209.85.208.41 as permitted sender) smtp.mailfrom=mhocko@suse.com; dmarc=pass (policy=quarantine) header.from=suse.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1730362209; a=rsa-sha256; cv=none; b=xMAiesiGY708Xq5an68jTvJkK94yatO6WoTGTUrkt5/FIaYgkop5MQ0+EUqpv2ZFXAxva1 cD5RmKzHORAF2VECXLqYnO8nAb6zleXCZx+oi/Ev7Hks2DdJhojcYeJZvOlEbgoHIAXfT4 thUYWeStHcWbuMjK5lvoCqt9r1eyloo= Received: by mail-ed1-f41.google.com with SMTP id 4fb4d7f45d1cf-5c96df52c52so866282a12.1 for ; Thu, 31 Oct 2024 01:12:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1730362367; x=1730967167; darn=kvack.org; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date:from:to :cc:subject:date:message-id:reply-to; bh=1NsFGdhFHt7vNHkeF4Op7bN0bdu6mqlOlf3mw5K16Yo=; b=fYaENgQRQXmOiBNpIQjrWO1W9fv5UB+xfZ+xLAipGGsojwewNROw8jPxj+ApvcCNSE GOEKAKVG/6xJj4DuMCmJRldQRpo9z3LTTfU+fIBmG5MgSIsbrQ11cmP9X2wl4XqjFSEk aGAi0AMwMICGu2j+ytQ+ol+10WXyYRxWf+F7UoMuxCr3xpP3YeDkwuLtjT3aUBMQJH8N cnpOFHx1kRpoKvUKFYm+XCMfbydcQan+PGfCA/KWnQFDKW0vtjt/260DJDxggov2e3Uv 6equ+RgTphCU1EMu3tMLBE8LLHAtSnxdswpHhOJ335f23ZK2wX89qBhGZe0yU6rpwXsl R7kw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1730362367; x=1730967167; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=1NsFGdhFHt7vNHkeF4Op7bN0bdu6mqlOlf3mw5K16Yo=; b=NkFtAawLmEP6lNxLP2/8ZP5E9tIood6tG9TWId1AjCovIVjdhBMv5SznVPH1ChZ4QS WWJeaQDa4MuAw0eVZEoJNYF5Iod+1oWyYEyMRGNhdzQZ7OyvZxDRx69Au+U9oWkCkp2A wM4pk36q69ul8fEbT9pDhFBYiu9PzuKXPNoWIqcB3PJXHeBasW555ctFNJ9vUTzW/Em/ L8ENPTLfB1g17UzNHtz0SVgRBasvnnd+HNVN7x0cAeOGFEaggbdxFyPMReA8oEKzUlUg eWHVbX9dPKYht7rfZG4VzAVR92JmZa1T/FBSHmDDfm1caxsy0mFRiR95nL/eGSu27x7O uvGw== X-Forwarded-Encrypted: i=1; AJvYcCX4soovC7v+xW7kYtmfa2SAzKkCjGDGbbdvVHfH4zKkOIc3xstSzgWGVcjEpwcz+bC+i6eMx9oNWA==@kvack.org X-Gm-Message-State: AOJu0Yww7z1rNFLcsBZfvlq5zQXkGApPBPElB7Eol2tq2hkoAHnZNvTE xLOD9qUS5sD/hEVgXzJUfu9jhEA1rVMOVwAu1W737+Kh12aHLbau7stmuC5eciQ= X-Google-Smtp-Source: AGHT+IErqAcDPZr221CAovWq14T0+yAWNPysXadW1rVCxC28+QsDk01at4oQ+oc4iW1WxHhAWm19ug== X-Received: by 2002:a17:907:94c1:b0:a99:4ca4:4ff4 with SMTP id a640c23a62f3a-a9de5d98002mr1492014866b.23.1730362367461; Thu, 31 Oct 2024 01:12:47 -0700 (PDT) Received: from localhost (109-81-81-105.rct.o2.cz. [109.81.81.105]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-a9e564c55ffsm39587566b.59.2024.10.31.01.12.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 31 Oct 2024 01:12:47 -0700 (PDT) Date: Thu, 31 Oct 2024 09:12:46 +0100 From: Michal Hocko To: Joshua Hahn Cc: Johannes Weiner , nphamcs@gmail.com, shakeel.butt@linux.dev, roman.gushchin@linux.dev, muchun.song@linux.dev, tj@kernel.org, lizefan.x@bytedance.com, mkoutny@suse.com, corbet@lwn.net, lnyng@meta.com, akpm@linux-foundation.org, cgroups@vger.kernel.org, linux-mm@kvack.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, kernel-team@meta.com Subject: Re: [PATCH v3 1/1] memcg/hugetlb: Adding hugeTLB counters to memcg Message-ID: References: <20241028210505.1950884-1-joshua.hahnjy@gmail.com> <20241030150102.GA706616@cmpxchg.org> <20241030183044.GA706387@cmpxchg.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: 2BFB81C0003 X-Stat-Signature: aqreat96bokxykibitdgrqy8w965swsn X-Rspam-User: X-HE-Tag: 1730362317-107662 X-HE-Meta: U2FsdGVkX19iBBKZ8W1irDeyZ0MRcvqs7KfOAYPj8+HCn2E0i1A9KrVWZvY+3U19Puy2i9HSrmC9V8Q3z2KnkmqFiF2LkmzjAoffMY3hFg1cs3FvT4sQpKIUvX2kYA9k4qCi6HRfRUTPFJ00ZGLfE4dtmb5mTzwwNuViMj6sRhZe3dBKI8/xAlrPUf31V6vzeXq0gD5EebN7h6oEejNwh2jWahKTVHExyz3OjAONbm7gt3qIEb2L6NqrUH/6dGSV2GIYp0RTg9Cu2LnrXWpqN04ow8LREUAxNPjSE1ME59xvgJoxretFf0+VRNx0q2h63txBSi/C/P/kKoojvKSS/tEr6hMeqJASXImCIl9LUeNKPI2ws++GQqE+anTv8E86mNJ6FbA5YkPYWFG3CI1UMqJSRBLZ83wJgRPDnFQoC9R+aEEdezAm2OxKaNGcc1WhlLMZ89YH37uPuhuGEly8StvbyXHS/7MbMKigkYbZWJKmNOsgjW7agZzn8FS1LKC62jjG3AfZbp13QGvnOa9lhRgta0Ug7iIsg4DO69TTBHDqhVaCS6rWjiv2Fp4xYtTKcw48huXevYCU5eVPESW/hIKuCiTsg/uA5VRYQluNBPCXLsSEndL5fC8fEMDdg+GkSBl29tra7QaYdKHb8OAPWlS0BItpbW/25O0YttzHlhehNE64acyUQ8bYcvLK4/5pZwfXpa3+SdikuJ0uNNuNoPg2VDw9rSkynPUlFRAQc/8JURLc4AN7Q+7SmpZ1XJCNvfp8JSmd050+SJMfHFy2gNsjcrNvQaj7rQvp0wnVpcuJDHyRlIIJKo48mQzMyftdDSiXCUdrWc/hhAiCXnjIR1ryoMB3mHA9xDnV9ZO7gwjCZQvCyEZqwGM9RYPeZgL1QnAtVmWInImREM1apiAIsJajFgomkLL2cyX9CpX0PF8A0k136gS6zxJ2bGBumebT1nr5gfFNUHOiZXmAP4T lCGSXVDl 3c8yh9KCaJJjNTHtKt9F1p5AWy0xENaf2XUOB/6L+OXug7wIAL6uvO74OuSnAZlHnYEiIwzppecibRq4fUrQPBaPoBQFgXzBWxF5oMG+RWjerkPB5+5TbcCT3+XsEbNFZt4yPCF0hw2hrTyU3WMvqGlxghJ3uz1zooloIOXe9uf56pWZ68wRKlBEzONOtkdO4A0tKgpio3PjllwuhdNp9nY7w4sA2vMFbTAkq9YG6GNAnh3qPVQbi8LI+kEELJm88MDmVJ3Ct/r9+k47PDRTlCrkFJ4IRGXP5muM4ZgrRCW8z5oCj0XzvFANVgfhsXXbYgsg+VJU7q9h0LVyCXPSDub3ODO6EcrD9GsklIfSJo+7k8A7iD72dlOKLFD2oTgI3atnucNTn75FPiCWqndWTNDcpeHgq0uGo1QRnUrJ+UnbU4IQ9iHDyg++thFWDBydrNHfSSch5272fggcnpDfUfNb4UYcm/gubUni67Iq3lfawh3LK70ah+CLLYrBRM5cypU57I5CQ98BVXiQ= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000003, 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 Wed 30-10-24 16:43:42, Joshua Hahn wrote: > On Wed, Oct 30, 2024 at 2:30 PM Johannes Weiner wrote: > > > > Joshua, can you please include something like this at the end: > > > > lruvec_stat_mod_folio() keys off of folio->memcg linkage, which is > > only set up if CGRP_ROOT_MEMORY_HUGETLB_ACCOUNTING is switched > > on. This ensures that memory.stat::hugetlb is in sync with the hugetlb > > share of memory.current. > > Hello Andrew, > > I saw that it was merged into mm-unstable earlier yesterday. Would it > be possible > to add this block of text to the patch description right before the footnotes? > > 3. Implementation Details: > In the alloc / free hugetlb functions, we call lruvec_stat_mod_folio > regardless of whether memcg accounts hugetlb. lruvec_stat_mod_folio > keys off of folio->memcg which is only set up if the > CGRP_ROOT_MEMORY_HUGETLB_ACCOUTING cgroup mount option is used, so > it will not try to accumulate hugetlb unless the flag is set. Thanks for the update and sorry for being pitbull here but this is is a bit confusing. Let me try to reformulate as per my understanding In the alloc / free hugetlb functions, we call lruvec_stat_mod_folio regardless of whether memcg accounts hugetlb. mem_cgroup_commit_charge called from alloc_hugetlb_folio will set memcg for folio only if CGRP_ROOT_MEMORY_HUGETLB_ACCOUTING is enabled so lruvec_stat_mod_folio accounts per memcg hugetlb counter only if the feature is enabled. Regardless of the memcg accounting, though, the newly added global counter is updated and shown in /proc/vmstat. I would also add the following The global counter is added because vmstats is the preferred framework for cgroup stats. It makes stat items consistent between global and cgroup. It provides a per-node breakdown as well which is useful. It avoids proliferating cgroup-specific hooks in generic MM code. I will leave up to you whether to add above paragraphs but I believe they clarify the intention and the implementation. Acked-by: Michal Hocko Thanks! -- Michal Hocko SUSE Labs