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 93A12C369DC for ; Wed, 30 Apr 2025 06:48:29 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D21B66B00C8; Wed, 30 Apr 2025 02:48:27 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id CD1AC6B00D6; Wed, 30 Apr 2025 02:48:27 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B73E76B00DA; Wed, 30 Apr 2025 02:48:27 -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 84D8B6B00C8 for ; Wed, 30 Apr 2025 02:48:27 -0400 (EDT) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 1151E12081C for ; Wed, 30 Apr 2025 06:48:28 +0000 (UTC) X-FDA: 83389781496.30.85861E4 Received: from mail-ej1-f44.google.com (mail-ej1-f44.google.com [209.85.218.44]) by imf02.hostedemail.com (Postfix) with ESMTP id 057FC8000E for ; Wed, 30 Apr 2025 06:48:25 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=suse.com header.s=google header.b=R7023yHa; dmarc=pass (policy=quarantine) header.from=suse.com; spf=pass (imf02.hostedemail.com: domain of mhocko@suse.com designates 209.85.218.44 as permitted sender) smtp.mailfrom=mhocko@suse.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1745995706; a=rsa-sha256; cv=none; b=RY+0i+7W770pxGeq+Zg+TcvIy3bxsRMi3X6Z/0S6SHJ9PwgXRIXwrXp6ncb+VBJ6+qTW1J uq+iy/mnW6dDcvHwDkF5xMtNXuw6EYA6PXZH+BzJk28IH5++6FCNRgYFfdF48498ClFE9a bYm//keZoQYnblcK7QcU3xBabhp0qis= ARC-Authentication-Results: i=1; imf02.hostedemail.com; dkim=pass header.d=suse.com header.s=google header.b=R7023yHa; dmarc=pass (policy=quarantine) header.from=suse.com; spf=pass (imf02.hostedemail.com: domain of mhocko@suse.com designates 209.85.218.44 as permitted sender) smtp.mailfrom=mhocko@suse.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1745995706; 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=5gJ92PtyNc3uFgKzWrC3UQrDRf0Vc6MoU7lP4izaMto=; b=ox1yYYfZO34slsgJDbiOrC86DPRv0vxHcKgmKPF2P+CRi365lpE8ey7gD0f4dY/Jmpdr06 Wx2kZU1YwpggdnmROQVo0sOwHyG5+GzwhiuXNcxu3IiNuW9GXGQLFQkwHVDpcxmuBtgu7n X2FFe0MhmKm5UljSaw6c5ViClPrVBKo= Received: by mail-ej1-f44.google.com with SMTP id a640c23a62f3a-ace333d5f7bso1127731766b.3 for ; Tue, 29 Apr 2025 23:48:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1745995704; x=1746600504; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=5gJ92PtyNc3uFgKzWrC3UQrDRf0Vc6MoU7lP4izaMto=; b=R7023yHalMEJwm6ZJpDPVaLqan8YQnL1NEf5yiHdBZyrxZqVfME+g1D+Lz8bBIRf8r zogfGaVqF1KMJrJMUrXAWEkV7s4Dcv9gIZGDZVQzjgsbVcudf+eXMytZBZdsEkNmMg2U yDxThiHtn2+z7zkqWZ8Btf6urd8rrdpajtg5a7BIdPefgwWcZpdIr914IUHdNAsB+reJ QV8sT41Tajqy9xVVjm0G9O4w+SColyWs3ontv8gnkHjDb5Cy6emaPx02ygz5zLspFRKh 3KVt6UnFWgN/f/ATIawCT8jAtXiO8B93XKaXhCNFLURMH1y64MGawNUbggzoeexpHoZG SYzQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1745995704; x=1746600504; h=in-reply-to: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=5gJ92PtyNc3uFgKzWrC3UQrDRf0Vc6MoU7lP4izaMto=; b=ancf+8vvWuGo+ePdsVqhz+eSnfE5fA4B5BEfwEqqhqMvWuz7HeeHwWK1hgWnO9JhuL 3i8FPPB6Dsx0r155PvDbmfjQhTfrccwZVpqWNZ/XhbAfE1dblr2tpREF5uSNt+jEc5L5 +8xSpsp7U00PQE4DU6ACHJ2NCUFCmNkQP8qtD6Tj4LwDiKMO7k/c+zvgg/eT0cLzTTng FIdjEeOsehQY+YlqspXYeU65fsYdBtYUOpDhcw6Z2ujjryrjajzywfT4s+sxUFhHugr9 UIrjV4z05euIu7R1bLEdbOfmBSlaB2A7MC/KQKjNRBSPw/iQzLc/MYde9ElCzZSax7xz YTlA== X-Forwarded-Encrypted: i=1; AJvYcCUQjh4qpd6iBygBJfajSaaVr3A1tPOXb32GSwpa57hQM2XAW9CWeCL7NArcUv+oBra3mLIL6U2G/w==@kvack.org X-Gm-Message-State: AOJu0Yx1ljHCwrtX5ZOnidbrxE47c2KOGK7UjeJ4914B2dTgwtIey2OS fWV5G5LXL5FqZonUF2KygCeuoMCnavRq2KT4n1T0G8QjQ2zUVrbuzDcuFRTwY5c= X-Gm-Gg: ASbGncteRLeHfcMy3T+CqINdBqnDK/t8oDHVKCr86TIsUjuCR7EsfJxesfaMFn2I/nC vX7FQ9YRHx7alqsMFC7yQBOqjk0XHu7ptapPHhNl1OBvFnNfAn0V9SuiYRtfHA0YwdIFlbNV0O+ JogEVbB95fUPqpzjQ5jCQk2C5Q+e2GNI2jteb7r3/hEGPBy8LoP7orbug4fnZcMd+p4qTjXIG7T w0q9dU687U6alnvH29Qv1DyKL61f5q2zF+OBlxnAKElMHhMH73STW0F5zBcQKPwPCsbFsb93GJs yBM6X1SQ2Ts5QjFHiQmvjtvjrKay/GM= X-Google-Smtp-Source: AGHT+IG+39qW8j7pMcUfNcRNZlvzFRRTpTPxxGngSv3XVrBTzw6ESYdByYqN2IRu7Qx4KY3myhmFKg== X-Received: by 2002:a17:907:968b:b0:ace:6c36:cd13 with SMTP id a640c23a62f3a-acee21642a4mr155109666b.3.1745995704239; Tue, 29 Apr 2025 23:48:24 -0700 (PDT) Received: from localhost ([193.86.92.181]) by smtp.gmail.com with UTF8SMTPSA id a640c23a62f3a-ace6e41ad27sm877283266b.5.2025.04.29.23.48.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 29 Apr 2025 23:48:23 -0700 (PDT) Date: Wed, 30 Apr 2025 08:48:23 +0200 From: Michal Hocko To: Shakeel Butt 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-Rspamd-Server: rspam03 X-Rspamd-Queue-Id: 057FC8000E X-Stat-Signature: 5zx1fdjfgukfdftaonhd3np6rdrrpdpe X-Rspam-User: X-HE-Tag: 1745995705-68567 X-HE-Meta: U2FsdGVkX1+JIFaqWc8nYsMqz4v/9hixd6f55afu/fyD9gxD4DKfKg+tEymMbbOSpH5sQfUC3/RVfawmOfF/qumfsm3G0T+CkFg352/mFTPRX7xpbIqyZ4YUz7GmBlFr4/PBRJcEK1e+zzWUOU1CZXdRUvmqh7zfl3ZfVF+6Sl6qyxv9DqOGZYXmOf6s87Awf1c4DeNQbQmPyPAZxoiEoPUskEXKDO552J9ZoWTyzsReAE+taGmvx5m8TRUAQAv9UOky3lvO/YIKfIYtIn78Jd5nkfvRB053YoWZlIBM/p66WAVqU5Y/8YfEp3C+yxeMqJwvpgCai/pN15LGmCbKsWcgeihHZSl76u74CEx3Kb9ighuSZZBJNy8xDQMC4rjfiL7lKEkbgdOtPDiTZl+7gCcEmnjWVmC8BePbt0XnhVgFEAGWH4XpdMQA8NaLpsleiF3L9cZnA8yvzHbLtyGZA8PwenWa13q2bMagWub13BQurtMGw377xD8IZ5a33Jobbzbr+sOWnM73eg8ODqaQ7mN87oFbxa/E4C1onwBZ5DXFFiQYa2rSoq8KTb0JvjO6nlWF3uVsVsYuYF5Yk7vDy7dZarj/I6o6h4nfCbfyZYF7qUPlbQM4cItRSvlIHI5vxaLaLXH3n4VulQoUiSOXbjc8DIFqRahix99Pcsg42P5pweYWkXd39292Hfd0Wk+lt7eJTFl6s9+qr7t2x3AP62loprPBMEm8c2CiezFmFijzgZ+/hh88SEEwTepW8aUjymj7aWrB+lfYvJgZaG2Whm9dtYXikWKBvdCEHXFSDBH3mT7/e3DAN3Wn51DFbMPrVijbuBJ10L9ZwumfAtodxy2SSm46aAJXAkToABZaeMPkDI9QFQmAwEmvpWPt1ahbD90RgzM8aIp0rutPWOASWXEspjfusWAAwBp52w9GPZLIcuLrRdUVk6R2MdLqEC+Be/NmC23I7nAy7KsSUl6 3EcMvILz tnQCvLFx8hGjVi5fUO3jNlW9684w2qj715xkHgFcM2bTLF+ZHn9FW/MktT8mDtwl2rFjW3SKiI3ZKsNjthEiKqKEE7LcZlPukGcl7k5NcaUCUid7E6Pjd2JlKkTqVrYSBVr3KaNHc3f0MJPLXLTRDYx0nRj8X93ifsOJUJ0UyCFzV839WljIHrkbsjn/AeZjaskuOaV6VMxcu62A//J2N2ksUltvFAzQkMf6BIXLndOuRCeNocMI7bezozU7jzUWdBIbl4mubrBuXpicpaohweq/C880rbXHPDhfrs4F3BCvklSoou/Q9jSp3okj5aI3VbszFJ4RUPnG4B1AT74yYVouS+vOk4ywfnlbtqtQA4by1J0Ol3auU6JJvFA== 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 29-04-25 11:43:29, Shakeel Butt wrote: > 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. Right, and this is exactly why an extended reasoning is really due. We have introduced magic constants in the past and then we were struggling to decide whether this might regress something. I can imagine that we could extend the caching to be adaptive in the future and scale with the number of cgroups in some way. > > [...] > > > > 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. Thanks! -- Michal Hocko SUSE Labs