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 AD8E2C4345F for ; Wed, 1 May 2024 00:51:10 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 187226B007B; Tue, 30 Apr 2024 20:51:10 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 136E46B0082; Tue, 30 Apr 2024 20:51:10 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id F40506B0085; Tue, 30 Apr 2024 20:51:09 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id D76606B007B for ; Tue, 30 Apr 2024 20:51:09 -0400 (EDT) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 4AA9AA0E62 for ; Wed, 1 May 2024 00:51:09 +0000 (UTC) X-FDA: 82067997858.16.17041B0 Received: from mail-qv1-f45.google.com (mail-qv1-f45.google.com [209.85.219.45]) by imf22.hostedemail.com (Postfix) with ESMTP id 6C95DC0011 for ; Wed, 1 May 2024 00:51:06 +0000 (UTC) Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=cmpxchg-org.20230601.gappssmtp.com header.s=20230601 header.b=roAzUTeo; spf=pass (imf22.hostedemail.com: domain of hannes@cmpxchg.org designates 209.85.219.45 as permitted sender) smtp.mailfrom=hannes@cmpxchg.org; dmarc=pass (policy=none) header.from=cmpxchg.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1714524666; 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=9BD94zdxyDu4bbMrkiiEBVb20niGXuFjMmzvoxFlieQ=; b=6LrIa5husf9H6QCIAf5VugNp/25MUxTLLahVAhEXvB1zETAM0KcDpvGSl0YzEA5DsIw5RP uk0lF21HfGeYGSeLpAytHkG4XBpSr76YjplShbae7skAjahuRVc/s+ct84jUTwRcU9BArn uhSLIBTYc6AGsHatf+yHG9hsMvxxhJM= ARC-Authentication-Results: i=1; imf22.hostedemail.com; dkim=pass header.d=cmpxchg-org.20230601.gappssmtp.com header.s=20230601 header.b=roAzUTeo; spf=pass (imf22.hostedemail.com: domain of hannes@cmpxchg.org designates 209.85.219.45 as permitted sender) smtp.mailfrom=hannes@cmpxchg.org; dmarc=pass (policy=none) header.from=cmpxchg.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1714524666; a=rsa-sha256; cv=none; b=k2liLeWZOPQMM9oQqZbuD457s4VzwvMyfhgjUEGdlcFvYc7JYe61KfqugdVdHsw9ndQhig us1KsGuAaNeqZ0g/RMVtBV5KK9m+oGNhi7365q/pdDTRGvIvN/ZTN1uaQnB/Xt0SSEIzw+ jaWP2W1b5LiZ/ulO1KY8fUB5EBfM/pI= Received: by mail-qv1-f45.google.com with SMTP id 6a1803df08f44-69b24162dd6so39531296d6.2 for ; Tue, 30 Apr 2024 17:51:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cmpxchg-org.20230601.gappssmtp.com; s=20230601; t=1714524663; x=1715129463; 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=9BD94zdxyDu4bbMrkiiEBVb20niGXuFjMmzvoxFlieQ=; b=roAzUTeol3+rF/nQj98ZMMMGneSxN9FSjYNCOQXTe4haSHKADfEOIgUFu7tcanGyck p7NfkwlAcWF/YvPQN936cnVQ7iIIoDmG3edWvQC1Nq6vl6Oo5qGImU6NuKQ+2xyDrKch 7ytp/sciqxG+p2ctobL5RIiqnoKazFBEYzZdinDG/Zx6MKuqJnNQ6Ge2jn/GbRzWCyI+ EoLfT5gV9czpZrBvipm/y1j1gbPkgiCoLXH6OGc8cT9XNF9LEp+q5o4jAAzDUKBWzjxL K9ufbd77sB3m4BwQNMWNemzZf+m1KjPzji1y5aL4hiIgsYACDnoTBHJ8WxLTGuJKnTJa GVNA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1714524663; x=1715129463; 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=9BD94zdxyDu4bbMrkiiEBVb20niGXuFjMmzvoxFlieQ=; b=OUdNGC0oetCMHixg+W7AryDf4JoGUodiHGeklkRWvZh3P0r280nThSsn1XUwAd+hg0 JnJmiZGkSmOMLeMkC/7eChOs3kOE3Hav/wlZgR952Tz37Espt9JEs1Ngtr+2Gwlkis5t FhQBsI40rFBeGm83Ze1m0LNFvwfrnUm3U8zsrHVZYn1oAwo8o4cesak1VHxZoNrbzYf9 FJazMDEuMh37nxbZAIJxVeMWfj9U+aI7ySiKdkUEbyGrkHX22OTWdiETW8UFRKfcCE2v Kh3Y4ZIIAHnB9bmXaY5v4B+BkG3NwlSnJj/ErghwtGR+eTp8C9ipYU6NRaW69FBXU5f/ XqUw== X-Forwarded-Encrypted: i=1; AJvYcCWMF74ESFsfdBVgh9RJ+cwr5MOtorYCSXd2Z86PIdG1OsnDDkhhZF8ePY0IDrXQLTgad/qeq2ztG8MZsZt7eTUeazc= X-Gm-Message-State: AOJu0YzxewTMdBsCBQ7TS4bKm+PJDsKYG3K1Ww2orJ4BFojaynhY4f1S 3lvXTKseZMTK5v7BzvknH6/uYcUZOmU6HuwSoNDPadb1pDp+GWDWwZlSy6dUxsQ= X-Google-Smtp-Source: AGHT+IGmkFCNrECwXMOsV+GH36MaUwl+gyGfkvlXgDL2aLu6d/LAO2jPBNjH2tAr3rSkoFwqy+Stig== X-Received: by 2002:a05:6214:242e:b0:69b:17b2:df34 with SMTP id gy14-20020a056214242e00b0069b17b2df34mr1310043qvb.63.1714524663371; Tue, 30 Apr 2024 17:51:03 -0700 (PDT) Received: from localhost ([2603:7000:c01:2716:da5e:d3ff:fee7:26e7]) by smtp.gmail.com with ESMTPSA id q5-20020ad44025000000b006a0cbed1bf9sm2543002qvp.7.2024.04.30.17.51.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 30 Apr 2024 17:51:02 -0700 (PDT) Date: Tue, 30 Apr 2024 20:50:58 -0400 From: Johannes Weiner To: Yosry Ahmed Cc: Shakeel Butt , Andrew Morton , Michal Hocko , Roman Gushchin , Muchun Song , "T . J . Mercier" , kernel-team@meta.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v3 4/8] memcg: reduce memory for the lruvec and memcg stats Message-ID: <20240501005058.GA2538005@cmpxchg.org> References: <20240430060612.2171650-1-shakeel.butt@linux.dev> <20240430060612.2171650-5-shakeel.butt@linux.dev> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Stat-Signature: uaaosoc9ofmn6oh3tpmt3rqne1c9k7cy X-Rspam-User: X-Rspamd-Queue-Id: 6C95DC0011 X-Rspamd-Server: rspam05 X-HE-Tag: 1714524666-643142 X-HE-Meta: U2FsdGVkX1+H1PeXVDCidpYHSfJBnZj9sj2F1cH4pXzluwVMQh1IIAEDkT7ij9PUE5wioixw7nJk5W72FAIF+18YJ3WTQGahP9/hmNBnLS6EkBZc88hfoWUqHvZGja/Gpn7I7lwslcHKJFRjFvjotIGsu0s1zvSQaIQquZDouS4ewKkZiIEXpCqDvDJPeArzMbfSsl0QgNGbPrQxvh4rQa+o1AC1Qd3ipfOcbt3GSAplL0Rptyv87aFzHJd90UWLQQUwx+axE+QUpMbWD2AQP+0mshV6hdAgHPutd+nhJXsAvd+EeqRsgRd0tkZAH27VYDxdI0weNXIdTckOwsEJ9lWGf+YHY4ypaXFIga/AR5hTMha7IVkEIxXX5WZlrisrrQTpL1Pu2lst5OuOMLi4oYDQDTPCOd7f65OtLlDijQaYKxyemoJlsK6xqKyiHk5EGcipEPoNWpHmyaUNSxVSiSEOMi7/9/SWSmrIAcymTgcDTANobpHvYqlgDhPnqVaC9Te7okRXNVUYdDAPPasPpymnlNumIs76Yk+hEKoloEjFb+q5JipnuHLgV97RZprVdlpIuhGYjhzo8+7TqdzD4dQZFb1CjPcsa95W5FCB24If4tBlX2xa+TSK4zCn2jfuWiswXpTT7CpR2z/tOJvLJHnZ2P+42UrGgQjXr3uFcCTlvkhTMW5Qpp6cb8Gx1F9kd3L5DmpyuL2bGVuNtLaJxOtgMiDA9Hd41O2xABUv02UbezyjcZnowDh1pzLImmRHMZI7BASK/ZqQL021oJuJD3a5KM9hNnEYXTE34ag2mJgpBou85ZA1D5rqPfCJUe/R8k9XOUwq8Jcov6Dy5sUsYPS4VdyZ1BaQU/VrbSJm/iSAYK+F8xVWjOW+GO+23wf6K6BMzXkyyxKYo/RSxd8vSvxxL+BABaz3oj8RpbjMr48G4ZjGhv4jabNrajvMC1xalnJxJwP3wMIcF7BHvbA nFG8Lwj4 xdB2uJ7zvd/lWNuZ7+Nf8U4gzQ5q8/w7zHKjMsGvWWUxtPjB0QekOrueLU6G//apZp5Dz/9DVB1nEgHNbRYNYEdBXQyf3n9O5yLo+LrN4crBli/Y7cqqOYiW6t/Alhj+GNCQpOg1egaqyGPzApRWP4GOL+kScbNCuGhVJNge+X2xsWUQhCn3BK0JY90PqDgKkq8wLfEzla4H+R9SQgJOjSUOCBp4K4R7JmWU190iqkZ+WHQJA8C1oVZossyOdxmOuGIjP1OQMJrwKhH1n6qpBD6LAnPL6xAVwAZT2tE4moOEGS+bKVSu3C622N/aDXXQgXkteS2P4tnni85+NC3NgMN5roPH8aiD6tlcYd38SVZwUfH7FLafnsPhJelQYsyE5hHcFZQAFlPHaIMY/eQDH00zQLxr24vZMDnC41cIJ78q5cE8= 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 Tue, Apr 30, 2024 at 04:07:05PM -0700, Yosry Ahmed wrote: > On Tue, Apr 30, 2024 at 4:00 PM Shakeel Butt wrote: > > > > On Tue, Apr 30, 2024 at 10:41:01AM -0700, Yosry Ahmed wrote: > > > On Tue, Apr 30, 2024 at 10:38 AM Shakeel Butt wrote: > > > > > > > > On Tue, Apr 30, 2024 at 01:41:38AM -0700, Yosry Ahmed wrote: > > > > > On Mon, Apr 29, 2024 at 11:06 PM Shakeel Butt wrote: > > > > > > > > > > [...] > > > > > > + > > > > > > +#define NR_MEMCG_NODE_STAT_ITEMS ARRAY_SIZE(memcg_node_stat_items) > > > > > > +#define NR_MEMCG_STATS (NR_MEMCG_NODE_STAT_ITEMS + ARRAY_SIZE(memcg_stat_items)) > > > > > > +static int8_t mem_cgroup_stats_index[MEMCG_NR_STAT] __read_mostly; > > > > > > > > > > NR_MEMCG_STATS and MEMCG_NR_STAT are awfully close and have different > > > > > meanings. I think we should come up with better names (sorry nothing > > > > > comes to mind) or add a comment to make the difference more obvious. > > > > > > > > > > > > > How about the following comment? > > > > > > The comment LGTM. I prefer renaming them though if someone can come up > > > with better names. > > > > > > > I will be posting v4 and will change the name (still thinking about the > > name) becasuse: > > > > > > > > +static void init_memcg_stats(void) > > > > > > +{ > > > > > > + int8_t i, j = 0; > > > > > > + > > > > > > + /* Switch to short once this failure occurs. */ > > > > > > + BUILD_BUG_ON(NR_MEMCG_STATS >= 127 /* INT8_MAX */); > > > > The above should be MEMCG_NR_STAT instead of NR_MEMCG_STATS. > > Yeah it's pretty confusing :) > > How about something explicit like: > > NR_MEMCG_POSSIBLE_STAT_ITEMS / MEMCG_MAX_STAT_ITEM > NR_MEMCG_ACTUAL_STAT_ITEMS / MEMCG_ACTUAL_NR_STAT NR is pretty common to mark the end of an enum range. It would be good to keep that for enum memcg_stat_item. The other one is about an array, where we usually use "size" or "len". How about using one of those instead? I think it should be sufficiently distinguished then: - MEMORY_STAT_LEN - MEMCG_VMSTAT_LEN - MEMCG_VMSTAT_SIZE