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 8856FC369DC for ; Tue, 29 Apr 2025 18:43:41 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 0ECE66B0005; Tue, 29 Apr 2025 14:43:40 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 09C836B0006; Tue, 29 Apr 2025 14:43:40 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id ECD616B0007; Tue, 29 Apr 2025 14:43:39 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id D02E86B0005 for ; Tue, 29 Apr 2025 14:43:39 -0400 (EDT) Received: from smtpin06.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 600A6140F1A for ; Tue, 29 Apr 2025 18:43:40 +0000 (UTC) X-FDA: 83387955000.06.E80E2B8 Received: from out-181.mta1.migadu.com (out-181.mta1.migadu.com [95.215.58.181]) by imf29.hostedemail.com (Postfix) with ESMTP id 698CF120011 for ; Tue, 29 Apr 2025 18:43:38 +0000 (UTC) Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=th0mMmCL; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf29.hostedemail.com: domain of shakeel.butt@linux.dev designates 95.215.58.181 as permitted sender) smtp.mailfrom=shakeel.butt@linux.dev ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1745952218; a=rsa-sha256; cv=none; b=PST135uceCDaLy1RdRrfhSnfPl07NsrKlvHj51Toz2jqJZSVPLDN8+M3An7sWzsthwSVid mOwO6WqJBiZzsGaJiiB0nQFIjaS7dv8dZvKeb6+M1A1wfC8AWa8YZvkyW1vJsneVI898Iz 7+QEQ6qyZG+9XdYvKlh8Wc8+elRZdGE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1745952218; 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=PbGSqBzLNpWlOS59XTKfG+qwmbQZ2wA+xkjLCzhbwfE=; b=qZBQBBaSGu5rSCBpLvPHiWfqRy7+hWx3MtJVmCvnBbqHTqtjms/VX+CyVG0HyYZM5FrbTv et6A8WVOnTn2SUvyV1kaMcEccRkZ3ny54CD8RO2MshhjjlqxSeqkTrnTZyz7ng334iGMfk P9ZI59OH7XuC1lvdCqWsph2TKdTLY7o= ARC-Authentication-Results: i=1; imf29.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=th0mMmCL; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf29.hostedemail.com: domain of shakeel.butt@linux.dev designates 95.215.58.181 as permitted sender) smtp.mailfrom=shakeel.butt@linux.dev Date: Tue, 29 Apr 2025 11:43:29 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1745952215; 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=PbGSqBzLNpWlOS59XTKfG+qwmbQZ2wA+xkjLCzhbwfE=; b=th0mMmCLdit+le/j4472txhxqiQcrL+ghmVRPSbgSFWYuubbc7mCKTwcJ/8gtlSNYbV/Cq amWkvQki/LnEQ+Q2e78TSE/02jvxqg6JlAIbTwSlCuMgOjGW700pSlaywf9veMyy7FBwtX sd92hxP6UYYqX6qUnmCuylOhU3Q9wsw= X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Shakeel Butt To: Michal Hocko Cc: Andrew Morton , Johannes Weiner , Roman Gushchin , Muchun Song , Vlastimil Babka , Jakub Kicinski , Eric Dumazet , Soheil Hassas Yeganeh , linux-mm@kvack.org, cgroups@vger.kernel.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Meta kernel team Subject: Re: [PATCH] memcg: multi-memcg percpu charge cache Message-ID: References: <20250416180229.2902751-1-shakeel.butt@linux.dev> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Migadu-Flow: FLOW_OUT X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 698CF120011 X-Stat-Signature: kqea9m5kjwg5jd8cmdo1ux7utxukc716 X-Rspam-User: X-HE-Tag: 1745952218-261220 X-HE-Meta: U2FsdGVkX1/TzvSmdggik+Ny7LklF83PUM3mSnmmmmNEJxWpDEh2qckKPBoBiIIao2EPf1P34hodptUkCZH/Mr+oS3sPUwUu6gu8sphxR7223nmnmOTHjHbTwrPXbe3QYzWpYD6oD7z6U8Gf63h+pIHjiFb1x0cINAWg+ClfMBLwninNcf96C0gMBc+XS6KE4tJzviJFZA9WAwPIWwgL6YTnPxaZ3VZtW3TKiDBz1PWLi1YqYALsp8UZeYxzV7PHKxTMoqBF0Qrtc5mAa2jksSwuAd3Vd4kGLdR0wSWuZYX2B3ZqPVpsBT25aPll8U4ncoTv6JKVuumK4JepNjZ402Mm5uBLiIE74El8Yd72C/2A0nDw4gQU2VuFIzRmF/CFcomzmNkbPSB+T779VKI5uS5vMsfr9K8DeVvl/NN8ZlsE2gDbnTz139jjXyNGX2AFDa0SD8hAdLDkd1Du8mNg3kksju3dAkj8zstsFm2cJcQzL94SCfvU6NHMtprab7MW2uLSFLROwortTQ094M1hRPjE3X1NxOdssrWvAKWpV07txXtkuViP8napAI0BOsN15iZi5LH55s3m4fvShQUJWojzfKOaeHoNz9Y83FuweZl/cv/ki1T0uXF8IyH3kDAaNc5FvHF3SxTBzrLf14Jb7+beoODfm2/X2Ag6C75j9+3rhHYP8yym3/OFmu+re8/mBiaHZkfiwrlz5GRrC4I/kBBFBJMEbdzKMbCNh/VWLxJTQy05Th8cxqpSqUcVE1KoJ713G3H/7aC3Sgr9Pv3uhqGrUkTJT0chljSMe1pzFkJ2IcvW0aMVx8osNxNVfdWKGLsN0MbsMnFrXIMm2pyMyme5O//wio3SqsBVpP1+p66chGivVtx5y9sdM9fqy7fbsMSPzy12ZQtT5NphdG9WZzsE8h1Zilem59BWDWIjH3uz0QGa7/LUovWyYHQhltFNmM8vXTr1z1yJfJRRTvu +l3cAJL9 U4FKdQfq0YS/XsZimoAaHTB3vj/6coTl/UYGP+ZvWlAblAVDkoXs3/Be5RqCLBbhBmwqnCxoJdYtI0Rg5ncqeP3cBDijogQ4eUort6mx7vE+U2pEDOU523c2tGAm20K5vTQp9rEmSPtoSmUofoY699t984GACJtRK072IEtARmbBpNGuyA21hlZns3AiuoaNjEtmH+f8up2y30XiBlsdB7PgdU6JqZTBHlTpKoVlbhVl2Q00= 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 29, 2025 at 02:13:16PM +0200, Michal Hocko wrote: > > > Some of the design choices are: > > > > 1. Fit all caches memcgs in a single cacheline. > > Could you be more specific about the reasoning? I suspect it is for the > network receive path you are mentioning above, right? > Here I meant why I chose NR_MEMCG_STOCK to be 7. Basically the first cacheline of per-cpu stock has all the cached memcg, so checking if a given memcg is cached or not should be comparable cheap as single cached memcg. You suggested comment already mentioned this. However please note that we may find in future that 2 cachelines worth of cached memcgs are better for wider audience/workloads but for simplicity let's start with single cacheline worth of cached memcgs. [...] > > Just a minor suggestion below. Other than that looks good to me (with > follow up fixes) in this thread. > Acked-by: Michal Hocko > Thanks! > Thanks, I will send a diff for Andrew to squash it into original patch.