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 45F23C369D3 for ; Wed, 23 Apr 2025 08:44:50 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 0749B6B008A; Wed, 23 Apr 2025 04:44:49 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 0229E6B00A7; Wed, 23 Apr 2025 04:44:48 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D68666B00A8; Wed, 23 Apr 2025 04:44:48 -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 B43436B008A for ; Wed, 23 Apr 2025 04:44:48 -0400 (EDT) Received: from smtpin27.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id E78951D027B for ; Wed, 23 Apr 2025 08:44:48 +0000 (UTC) X-FDA: 83364673056.27.E3426D8 Received: from HK3PR03CU002.outbound.protection.outlook.com (mail-eastasiaazon11011016.outbound.protection.outlook.com [52.101.129.16]) by imf09.hostedemail.com (Postfix) with ESMTP id F3ABA140012 for ; Wed, 23 Apr 2025 08:44:45 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=vivo.com header.s=selector2 header.b=LyAATyFY; dmarc=pass (policy=quarantine) header.from=vivo.com; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf09.hostedemail.com: domain of link@vivo.com designates 52.101.129.16 as permitted sender) smtp.mailfrom=link@vivo.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1745397886; a=rsa-sha256; cv=pass; b=6Qn2+pfYTbBjKxFWdqv8XjGxNqCgt2JQ5CtINlrFnuuO1Y/Z5feo+mNrmGNR5qsMsowt5g Zvv5qqKjU4TGm55t/GcOLpS+85RSCtWH59MDhwQ0DCpPkQDists4IUMJYfumDtBfmACUqw pvbw/slIHhqqbHSnPfATCsIdNc3XaRA= ARC-Authentication-Results: i=2; imf09.hostedemail.com; dkim=pass header.d=vivo.com header.s=selector2 header.b=LyAATyFY; dmarc=pass (policy=quarantine) header.from=vivo.com; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf09.hostedemail.com: domain of link@vivo.com designates 52.101.129.16 as permitted sender) smtp.mailfrom=link@vivo.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1745397886; 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=Dkj5cVHxKIsG2Sx6wH0Vn2VjO66YRdldPUq0Jpu4mYQ=; b=WjS9qLd7wY/b8Jg2QJZYNQSRUV7sLmZr1kTQqrh4TRXaPpmODljb0fxGsupI4OfsaVfqd6 56Zi2pWD/02mHOX1dT0X+9HZPWIqupwulEtpf/TyRWlcxktX2tuflGue4FctV0MSfLCWeK SypzbVevXx3wwYJEa28V5psBtQMOGOk= ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=zB3i3efFnUQkEE+OnGuxu/nonyCwzCuE0sz8iqaqkd3gl8Vp3dXDOnezdchxAbguAgs0ZVFO5D6ZczZSgLjxKcnFo9iiYAppaGgx2sZfTKYvGMMP09Nlxq5fL5G9SDY71RxxPkDCgPouRS6KZP1fcp/76TtmcNldVfnSmZMXwFt0TKa1a/A8c0PchWzL/SVcPLUJCVQAg2eeKG3PW+skDpW6K2JhXkY/ggsI5lKnw7PhE42Uv42KqBhuW3ZW2obhBsFXZ9bC8yJiTj+5TpYVkzk9jtNCnBsOKfzm6N7uDWgemn1FT/kc4G44vYjqsY0Pk5rjGjECZw7oboi8XFutqQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Dkj5cVHxKIsG2Sx6wH0Vn2VjO66YRdldPUq0Jpu4mYQ=; b=xSTDivbIxHU6+TiTdwH1Gu2cheMkdaD3yUJDVE2bJS49vtEVYQkkipLeBDkzRgqGvZP/U4e9ur/3aa6xP6Pdo4dSn87+ytGoochHm8srdSMrkRSfsRE04dcWvKRaTsRo8e8KkOLlRpA4sMG1bJSWOgx0x4YASONFaBkTkrhXIicpWv72m1FzaG+MCPIMVch1d4lvH0s6JpDk5h9CxkBIgMdpFIfZXEmkxDpFpVldiGGvrAc1FIC7dSafNpPqTP7XY0E8Hk0IPk6QK/ZnQ/PZDbSSMmFqS81jHHp0DWVZR+pl7MuJIGScIJT18/tShHtAyKZbpfFJ6PCVHrdVGFpcxw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=vivo.com; dmarc=pass action=none header.from=vivo.com; dkim=pass header.d=vivo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vivo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Dkj5cVHxKIsG2Sx6wH0Vn2VjO66YRdldPUq0Jpu4mYQ=; b=LyAATyFYZs/21WC7XXDljlGvfDQxaHFQHyozGdFSXLzsQBgdD9sFmAqY5ws3+4Eh3SFp6MCkSJtdBT3gTA3K/k/nq0MuwpCFXBfs/yrurzzgTnkYULCnpJxzNFDW1009/wNiJqaDGnHVFu65HI2/2iSQhNPO/R4fKSCAYzLsKtbN3lw554d82gpnFSPMoA5AqW1lCnYal/23hddVPQH5OzlSic+Ve/B64TFMYw0X3EyFbOM89LV27of4ykfM/RNkZUB/FdZ0w0r/zEk/bjLK73jBn2RjF/IRdgZjXeqSdyzq54HOMA12QP0hU5+HJOZG+TQiWLqUFlEo18LmUMmkQQ== Received: from PUZPR06MB5676.apcprd06.prod.outlook.com (2603:1096:301:f8::10) by TYZPR06MB7275.apcprd06.prod.outlook.com (2603:1096:405:b8::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8655.36; Wed, 23 Apr 2025 08:44:27 +0000 Received: from PUZPR06MB5676.apcprd06.prod.outlook.com ([fe80::a00b:f422:ac44:636f]) by PUZPR06MB5676.apcprd06.prod.outlook.com ([fe80::a00b:f422:ac44:636f%6]) with mapi id 15.20.8632.036; Wed, 23 Apr 2025 08:44:26 +0000 From: Huan Yang To: Johannes Weiner , Michal Hocko , Roman Gushchin , Shakeel Butt , Muchun Song , Andrew Morton , cgroups@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org Cc: opensource.kernel@vivo.com, Huan Yang Subject: [PATCH 2/2] mm/memcg: use kmem_cache when alloc memcg pernode info Date: Wed, 23 Apr 2025 16:43:05 +0800 Message-ID: <20250423084306.65706-3-link@vivo.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250423084306.65706-1-link@vivo.com> References: <20250423084306.65706-1-link@vivo.com> Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: TYAPR01CA0162.jpnprd01.prod.outlook.com (2603:1096:404:7e::30) To PUZPR06MB5676.apcprd06.prod.outlook.com (2603:1096:301:f8::10) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PUZPR06MB5676:EE_|TYZPR06MB7275:EE_ X-MS-Office365-Filtering-Correlation-Id: f006b816-563c-41a9-6639-08dd82430def X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|52116014|376014|366016|38350700014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?TbdctyTuMmmAi4r96T0fHeAydh3iCqUi4n2ZD3DgdmzioHup09dnFaj1ooE1?= =?us-ascii?Q?JpjTTk9rGsDNB4H/iJ10+32xG7uh8RD4WlAc7duMZIl77oayAPmkD8gv9we0?= =?us-ascii?Q?I1MiP+B7Srjn+d4lg4mPINK2li1XgUN2Xty4LBCDXWJSOPMC42ZLUvSLaAIu?= =?us-ascii?Q?7QOU/MpidVhd+S0XD2NH0VSp6YIV/2qn7PAGFCwEe7jbbIXNiU3gNHY2PNVx?= =?us-ascii?Q?Tka7JP1YmYhw14agxgMhbFvYqKMdi+LH0AN4zGJ8QMRBUcaL+5sAFhHZBWMJ?= =?us-ascii?Q?LKcGp5FSw6IvibiP8sD6Fk44RDivIAnm58WpCe9+D1JiU8GRzTWk7EjV0byL?= =?us-ascii?Q?7BfqGFH5lMgcxSytVSRFtIxNbCRL1SAc7eJwEZJIYt6G7Iuz8qZf8zJfjiy3?= =?us-ascii?Q?SAoHsBMB3uZj1w7XC7NwOXG+GS13qf5Q4D0qcG/qvqG+HYKOg2IfnZ2owiMg?= =?us-ascii?Q?gpMDpEdH170OkaAOcXwhKX+IPquuUlwArpkz7UsJRuE/8GUNyf6mdt4CHnUs?= =?us-ascii?Q?Uy1JGrXyw5qPREPQSYiftAsvmhcYvlG5E5ZLWC6SCe63DvAKe137FFx67hhu?= =?us-ascii?Q?/dAR0oOoiUFNUbwg4AnyweISGveRycFe5PMgi5sM/fI1AcB6tGxGVQdyr5fq?= =?us-ascii?Q?DF0R3v/MPifoCiMqmF46l8TKKh0uk+Uva4bP6yzWRNKrl51asNAkbYcKMnAk?= =?us-ascii?Q?vwqLL2LT9UMBmRVhmHK80j0yurF77LX6SpOyXlwrKZ3yWnjbEDWHvaHFALAS?= =?us-ascii?Q?mYEiTSYj9O2qhiVzS9Zjb5yf9hDjS8iW+dmeJjo6/QI9p+2G12+E0lYcyjJ4?= =?us-ascii?Q?OjiAz8HOLgVsQprai4HuW8BTjKNJONrhh+wI7udrJ4AbR4NoyatvaLFQNeS3?= =?us-ascii?Q?0zJeFzGp4ABNLzcI79T/jYq/qfMFRF1wdMKsuZ/SHPWphHgcQtSRIM8YbYUZ?= =?us-ascii?Q?M1mt8S8rpEO3P7VfnvpBVH/CCWlKRYiik9q8WP/nzcmevU532NLG5i3rXc4S?= =?us-ascii?Q?3tIqrcR1Ve/gf6G/+T2z+vHI5d6ccSYpCVQWfdS9Y1xVgsgtaxCdvqEPncX5?= =?us-ascii?Q?yNcAmoMjMidLwWNUSntSawtYxH1P4w1t5m81C++sCf+Gzk8f0e/5voRogoZq?= =?us-ascii?Q?Dr3QV9F6XY59cQNUNYb8bssG2l887cnRw1Sbq2vRYktINfkJsfYNdXsOSZtF?= =?us-ascii?Q?LnrVPYNV3oZwJytqF5wh4LYY8X7kM4sr7uFOgQghYQSDWneDEnWVZ3+y+F1a?= =?us-ascii?Q?AUdssvccxlr2LIifxrrJAlKIG96ruQmORnMTx9WInz/7Z/csjOVb357nBNl1?= =?us-ascii?Q?JTyfHc5Fuw/7dfrXBcmZJxKGnzhe+Huz6SQ5wc2LkWTCEt2z35PE6ZkOsL+f?= =?us-ascii?Q?VcQWT7Dsgglnog4lF6X1t+yIK/oUbKFNTNtZmC/X7lOWxGhR09MMvz9T1crY?= =?us-ascii?Q?Kbwdblu/V2Rp7SN93hb8GabKA+ZMKY6kGtyq+OiAgGq4JsU09Y3Mmw=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PUZPR06MB5676.apcprd06.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(52116014)(376014)(366016)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?NZ51vdHO+b4vPMZpque+wzNA5OS28WxlmOZgLQyVWY7bqzjgEA+aGeEJoCaI?= =?us-ascii?Q?sGGwy0D84FWrHnzjRYg8xope/TNYZu8ZwPbq/IzM6iUjDVDnrXixsyC5zt3z?= =?us-ascii?Q?RgIqZ637iSyJ3VOgqfHBpuIRQ7riyeku/PqPxDRcEJsKfcHP67AcQqr2lDg6?= =?us-ascii?Q?CitjrCCTJGgtpZBVl5tDt9iDjItiYKwFtfXnnaTAcXNVvALGHmuaPvuhBxgc?= =?us-ascii?Q?Abz46PyPaEqznG7U5HNwpNUVOUyPj5HUfBv32gpsBWbESw/mKLHHCnweDc0Y?= =?us-ascii?Q?LyRWHZKHEfS3bz0Bqlw7NRPwROKy8lr5Ce5e5hAn+ZS/agN5aPJ9B8vxOcEK?= =?us-ascii?Q?FlO6mSfMybU+BuYZFYNc9VyOvXAy3fNbFS0iQO/fchrITT7qKusAEKdnN6Wp?= =?us-ascii?Q?/hQ6mI1RtLwCG5mw/2tCOF73U7UPq3yDT2SYmhOtKnkhPaL4vPMSm2w1A8/c?= =?us-ascii?Q?/j7efpCBeZ0mhB0GbKo62IjrxZVNw+fzlM3wz7yML5kyTd1zjwD8YR3ReHNi?= =?us-ascii?Q?FA7SWVSMUskwxD4Zxfgke+ErUPyuqiCr2Sbz7btWym8DQdcSPEmICoMKYreN?= =?us-ascii?Q?EmnwChAoSL/Pfry9/A7acxOG6NDIHXnigtyIF8OWVBxqNtvNpG2Zv1KyCFSB?= =?us-ascii?Q?scmjELW8+4bSXM41v0t1lhIYGvVKD2VCYo1eCv3jm6dbSqP700eRQtTwzPek?= =?us-ascii?Q?6lyadG8/cit+acShB9BTLGENy8NixSscyPBrEACaEmWhkCPMSo2GZS4QhAtG?= =?us-ascii?Q?Ca1NfQQj8rfCspMB0h/BZBsr3yoGGZmkp0dRvTxqDkddiMyTTVeTZK22JdpB?= =?us-ascii?Q?bFSP4Wc+gLzs1amdm33wUMrb+Oc3EyEoIM2/H7piAAQdYwJBUiDEx4zvbEXK?= =?us-ascii?Q?SeIKdE0RgIP6PE1FuWsPYExZrg9NW7ogujFl9xqfHqdg6LQ2F/647dnmYDkx?= =?us-ascii?Q?pNubMAX9H58YzDWRXzGrR/KGJgi4TpMeBvEWXxHnrGnVEeI/9KLb7AyiPlVp?= =?us-ascii?Q?88VbHnev9cwUaZdW4TFBt2O0YsWaviGPZ2Sy/4LGKOtOPbdJ5DNgAW+Sn3lb?= =?us-ascii?Q?/rdzPnFPro6nodA25hrwOlU/l/+CLHZcv0z9i7w2DqVCAOT0mErEdf0qlhpM?= =?us-ascii?Q?FmdM14zKYtiOPKspPrYyhu6+YFWqC6H9cX9pu9Fe2pZwswNn4T6Ti+uCssyK?= =?us-ascii?Q?4HZ/X9dCVQ3db2C31RkruaLIoCqmNbsD7jchquWeZK8myaFW5Ejv7jcU95/l?= =?us-ascii?Q?7DxdnI7O0uvN4Uy5fjWxqNqgxEHEPnW2/4Mu0+8p2QGpj9ZJA/8Cx+V82NGu?= =?us-ascii?Q?UAY3ZCeGT88E2FogOKzVsyyY+wpdZeesKkfGQH7hwebiBH09X+SWTrJjy2rW?= =?us-ascii?Q?SRl3HmrlviM2Am/8W0j+QyXz7k5vJcA+AF/J02qDr+7GqIy45L0WRI5Es3PY?= =?us-ascii?Q?nKGr6Xbcybt6RWtOQuEw+88Gdj3esD81WlyI/IVvLZ7KsELXYA11rcdSUTaL?= =?us-ascii?Q?gOG6ZvYvSRq1o3mSMBsEjYpk3PXyu42Oe4LEu628fV00CBH+2Xk9MEmli9PO?= =?us-ascii?Q?k+w3YsHwX+bIqu4lW4IEVPhHXSzQxVKHG01EHQ8h?= X-OriginatorOrg: vivo.com X-MS-Exchange-CrossTenant-Network-Message-Id: f006b816-563c-41a9-6639-08dd82430def X-MS-Exchange-CrossTenant-AuthSource: PUZPR06MB5676.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2025 08:44:26.7309 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 923e42dc-48d5-4cbe-b582-1a797a6412ed X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: fbcF9kNWaGeERghcDPUFUrSNmceR4xHWpi6XGqMDxDtNUSEsCsYiZW3hB39GaEL18n35iElX5uUN/1UG1RdE0Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYZPR06MB7275 X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: F3ABA140012 X-Stat-Signature: eyc7h8imyzuayoss1s4reajiwxoz6n7g X-Rspam-User: X-HE-Tag: 1745397885-826876 X-HE-Meta: U2FsdGVkX184DyJTvflJT3r0obTJV8FUHi0oxY3Y2zqxJm9oeploNWlVU6BnT+gh5HoFtCpLxOLCvpBCzN/ZmX8jWcKbhiGELTJ5tfM52WgUpwYu2Ig6vGvDAcpZjsmL24ctqvu6m1M3PBNwYf1jS0LSaQ6/VV6wf29ZX1S7+k3Yr6uRuaHVAYE3ak980HpexOca7m2dohiNj/t/mpNs19q+ENGrlduutFsdnC+9G/Wvqx+WQ5ONxOF1fmHo+Rfh7sCxTYSO28mfXoGSVMDbtX3p9WS3i+A7HmKY5Trq7RFrb9jQE5KYdSnA99bYDg1iwi7X/dOUsxroJrDpQAUmTGhJA0VyaFc4YWPV6rosQcJJENrLX3SLS4aqzk/kamkK2jfS8My2VM9Q+jM/9elBefR9/oq32aHv/xtl7XxBOzG9ghrurVdJ8F6Qom28de48VYwJ4BqEq+2/u0Oxtj6q0ZsLCoDa82cKma3evDT3SrrwU7YUTGxJnLhhyIC8iQGiMsV/Uc431KuWD5vgZEJRc3WgrLgJnjV8mIFHekpbcBN+DAS2duVyKBcCY/obTWgfjLL7kMQmaauxNFW6/rS+aD7l/42g+KSaCsmDl1rY/o+tRIYP6jaKnMovGEJxgkQrjdSyMR9K9CSHLuZeTMxQRLHkVWIT6I562SLwFgigyyXNDmevujTa9E3MaA4w7leS5AhWdcNvxfGZ02jWBrnil9zDsiRehLAv+G25hYWzzanXo08hky4WfZlu/U2LVhsQzPmX8QwPNRbBtZ0qns4ulkQtBSXBiiHDkPnVVbrXQfszQwHI0bnndPi+yA4B/8rsT7nXiVc/0UQDKxqQ7xfm19YF/LLDC0l66zgpv6zdwuw7tHYsEkpi5fR+5ka8v6xqVg2tuLPIFRCQqJGhiCivph0A1wxVShjeZbqsed1sOCjIWG9ezuqbgSFOjy2vaDXHpvCtlFdyS6KTQSgJVFx ICTixwio +UVSHU3ZnWTGHHj5A2Cx9YQWwrZPhQ0evufQcpAtLh0Th+83VIagYpYpcviJ6AikZGNPwDlT71CZ6KNJhkKvPjcho1IKVjYrRYtgyVjPBgJCY0fhau40WajmdcghEGMuZSiMYlwU5Naeku77ZCDAUxNj+taXH8iAu4eW2W5aLOCRuqUlVjJn1YBjDb3I3JC7kZFywbHs+5BtHNswm3k2c5+TeR7f2nT51bGY+ujBdjQv/uje56MsowF9j7NRgavMtE+VsZKA7W6tQvyZ9EeYehrl2YJoMvtJwYXbsRU3fCX59W/wY6ZIJhJUdwmHi+X/vcVqGHt58BxXe2M2z2AeUGEqQ30yZlB+wDpFmIRldX1pgke1FIQJxX9BfvOnUJbsaOZOHiSZx9B+B//PTAPst3mkha+xFU6YEkbc+l7YhIFMFjUih2PYxgZQdkA== 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: When trace mem_cgroup_alloc using trace_kmalloc, may get this output: kmalloc: call_site=mem_cgroup_css_alloc+0x1d8/0x5b4 ptr=00000000d798700c bytes_req=2896 bytes_alloc=4096 gfp_flags=GFP_KERNEL|__GFP_ZERO node=0 accounted=false Due to each memcg will alloc per_nodeinfo for each NUMA node, and each NUMA node is 2896bytes but kmalloc also given 4096bytes, that mean 1 memcg on each NUMA node will waste 1200bytes. This patch use kmem_cache when alloc mem_cgroup_per_nodeinfo for each NUMA node. By this, ftrace how like: kmem_cache_alloc: call_site=mem_cgroup_css_alloc+0x1b8/0x5d4 ptr=000000002989e63a bytes_req=2896 bytes_alloc=2944 gfp_flags=GFP_KERNEL|__GFP_ZERO node=0 accounted=false Compare to kmalloc, this only "waste" 48bytes per node due to HW cacheline align Signed-off-by: Huan Yang --- mm/memcontrol.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/mm/memcontrol.c b/mm/memcontrol.c index cb32a498e5ae..e8797382aeb4 100644 --- a/mm/memcontrol.c +++ b/mm/memcontrol.c @@ -96,6 +96,7 @@ static bool cgroup_memory_nokmem __ro_after_init; static bool cgroup_memory_nobpf __ro_after_init; static struct kmem_cache *memcg_cachep; +static struct kmem_cache *memcg_pn_cachep; #ifdef CONFIG_CGROUP_WRITEBACK static DECLARE_WAIT_QUEUE_HEAD(memcg_cgwb_frn_waitq); @@ -3601,7 +3602,10 @@ static bool alloc_mem_cgroup_per_node_info(struct mem_cgroup *memcg, int node) { struct mem_cgroup_per_node *pn; - pn = kzalloc_node(sizeof(*pn), GFP_KERNEL, node); + pn = likely(memcg_pn_cachep) ? + kmem_cache_alloc_node(memcg_pn_cachep, + GFP_KERNEL | __GFP_ZERO, node) : + kzalloc_node(sizeof(*pn), GFP_KERNEL, node); if (!pn) return false; @@ -5065,6 +5069,9 @@ static int __init mem_cgroup_init(void) memcg_cachep = kmem_cache_create("mem_cgroup", memcg_size, 0, SLAB_PANIC | SLAB_HWCACHE_ALIGN, NULL); + memcg_pn_cachep = KMEM_CACHE(mem_cgroup_per_node, + SLAB_PANIC | SLAB_HWCACHE_ALIGN); + return 0; } subsys_initcall(mem_cgroup_init); -- 2.48.1