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 C5B4AC77B7C for ; Thu, 3 Jul 2025 17:38:23 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5AC0F6B0266; Thu, 3 Jul 2025 13:38:23 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 55D696B0269; Thu, 3 Jul 2025 13:38:23 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 44C456B026A; Thu, 3 Jul 2025 13:38:23 -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 3529A6B0266 for ; Thu, 3 Jul 2025 13:38:23 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id EF07210699B for ; Thu, 3 Jul 2025 17:38:22 +0000 (UTC) X-FDA: 83623662444.03.0EA46A8 Received: from smtpout.efficios.com (smtpout.efficios.com [158.69.130.18]) by imf23.hostedemail.com (Postfix) with ESMTP id 79A35140002 for ; Thu, 3 Jul 2025 17:38:21 +0000 (UTC) Authentication-Results: imf23.hostedemail.com; dkim=pass header.d=efficios.com header.s=smtpout1 header.b=RrMz7UiZ; spf=pass (imf23.hostedemail.com: domain of mathieu.desnoyers@efficios.com designates 158.69.130.18 as permitted sender) smtp.mailfrom=mathieu.desnoyers@efficios.com; dmarc=pass (policy=none) header.from=efficios.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1751564301; 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-transfer-encoding:content-transfer-encoding: in-reply-to:references:dkim-signature; bh=maZRtKvjnlk8iwsSJIlHZqfOwYTgx7VyGzNEE7nXlmo=; b=o1tUkd5jRJoRxvC5vzw1bBJ5hvWQITxnkyeIlKNFNWTgtd1cRL4zCYDWqs01k43KihCF1K CkX3wCPdwYN/HyGlQslOsozdzVSmlYO/fWiUqJM12JcqLXe927Cj+gtY89+UdOfD3HWWDk wtUpF4TcggNMeNrGWsk64lwuuA/KwZs= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1751564301; a=rsa-sha256; cv=none; b=mzj6nLwXbwG/qsFki/DE1ioCsLkHYdNApmSC5m7YHLcXbBCPE42r5BgTVsS9nE1fY70brt HqXMS986eiqZq50cW+5jW9duKN2YudEuBDI0SHa3l+ghG/vZMDMmu3KkrvSyYjZs02ghun kjQX1j/qogA0y6Vxcg2Vl4HN65kLDAA= ARC-Authentication-Results: i=1; imf23.hostedemail.com; dkim=pass header.d=efficios.com header.s=smtpout1 header.b=RrMz7UiZ; spf=pass (imf23.hostedemail.com: domain of mathieu.desnoyers@efficios.com designates 158.69.130.18 as permitted sender) smtp.mailfrom=mathieu.desnoyers@efficios.com; dmarc=pass (policy=none) header.from=efficios.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=efficios.com; s=smtpout1; t=1751564300; bh=kZci5UJ1oWcZBBjH7Ug8xWdX335Xkrzp7mbkmxZuC84=; h=From:To:Cc:Subject:Date:From; b=RrMz7UiZ6nPttUwWbcT70Dvzg9lJq9lvBQpKKbkgYtBKVimUvlTibar176dln4Xx0 WhyxZ/h5U60qpBp89f0wxnHy7nRhvIp62vTUjhcLq7TwxritdgPG2sfcN9fjOs9l3S lY96TdbEcJ7Fufw918pjx5ty4VrncbmbFWNGlMfJvBy1BKe1hiBcDGgNq4hj1H5c2G s7vBOaExztMBkW6dSKdU0b648NQOaxF5YwwbRm//7OL1fpEIjW1cZTlfywGQnylVgT clLRKtsdz/OSwbJl5UgrEdaKgxc940JdWz6saGco2LZnEdDM4R7WOFDdSoXocL24QV ILW0HR8Dg7o+g== Received: from thinkos.internal.efficios.com (192-222-132-26.qc.cable.ebox.net [192.222.132.26]) by smtpout.efficios.com (Postfix) with ESMTPSA id 4bY3rr11w8z1Ndv; Thu, 3 Jul 2025 13:38:20 -0400 (EDT) From: Mathieu Desnoyers To: Andrew Morton Cc: linux-kernel@vger.kernel.org, Mathieu Desnoyers , "Paul E. McKenney" , Steven Rostedt , Masami Hiramatsu , Dennis Zhou , Tejun Heo , Christoph Lameter , Martin Liu , David Rientjes , christian.koenig@amd.com, Shakeel Butt , Johannes Weiner , Sweet Tea Dorminy , Lorenzo Stoakes , "Liam R . Howlett" , Suren Baghdasaryan , Vlastimil Babka , Christian Brauner , Wei Yang , David Hildenbrand , Miaohe Lin , Al Viro , linux-mm@kvack.org, linux-trace-kernel@vger.kernel.org, Yu Zhao , Roman Gushchin , Mateusz Guzik , Matthew Wilcox Subject: [RFC PATCH v5 0/2] mm: Fix OOM killer inaccuracy on large many-core systems Date: Thu, 3 Jul 2025 13:38:11 -0400 Message-Id: <20250703173813.18432-1-mathieu.desnoyers@efficios.com> X-Mailer: git-send-email 2.39.5 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Server: rspam03 X-Rspamd-Queue-Id: 79A35140002 X-Stat-Signature: bae1xsugc5fctg9fotxeczw6j6ebm74x X-Rspam-User: X-HE-Tag: 1751564301-604789 X-HE-Meta: U2FsdGVkX1/0bTSG3qEH9J7j5y5hEPeBmTOnNCSygdDhsX+KrFsI421vd9IWiuKGJ94sKxEW7m7GKvEit4ewz4DYtzD/8KvB8lt5j7sjdz8tuAEShDo1c6XAQBleMIuVJwDo6fVOrBliYFuZiD8xXPIJNwFiec/WfiDK++/m/5xWJByx1/RLLl5VCpqSE0IFEmm2kfr+NbGHeccjwW+nNq2PrghFEnqDQZMmqJlgpH6ddCGQdRCKpaDFioiXx8sWonklk/gI3XrvomRi54NXMOMLsll/Pk6UsM5vMbqqfun/vmI6VlrYIucgfKb3rr4x1DOOdlY4k+JKZDWuVbgh1HmfABJKqFTzaHQbF0ctdqkjVoV51vpGB82GzeXSh5SbPUnR2+ca5zPB0H+JKZOfw/ncrWugQ4bfkuOEKeYmdQTCCVmgnsb9o3PpjLaytsQsuh3N0JCBfZULsg0+bkAQF5YIFAIdaNTgF1VpvIpAAz5Pt+81k3UpNBpva4wmnrOR7QpGcQnuKxcyt1FwrH+5qhcebC659M/jojE1BoqxgHf1eElmumXyH/j7b5E47bLi4c579xAtONK1UaUkdHTQwI6C4L3OGFcjkygerPynp2pK/9XFWDNVv8ZjsWoMu0fqmfU6/bs1LGm5tZzyng45e2iqI2j6hgnyei6eYCsywxp3yX0WSER3rUX1QoA/o3YK7Ntp1xTTWatDIENqIgUE9v78rOdMTNIGcXaKdpAa8Gbj2r0VarQtxzrj05sipnaNpmffWBaWwWYT5ihnbwCMiC4RvpoJV5mArlYnGDT3i6o0Gnyuq0caoIPGxRzVLIMPi+o7tqjlfJdMLM3QO9lFuI5DGEqn05b9SkS2W56zWKeSd2U9cytIqOV8uneDsTbY8XxdzlhSP4emVxx7i9ZwWG/nOfmJIzfskTs9VEYjd6sFtn9Jm2rkgCsBj34XZsSYVb2QevJP03gi+d00Tzu fG8/dESX QH03XU717yZt53wA4SU+AZ9LnWsmbMxaqz8a7fA+am4WfcPzlFlnqITgnUo1UYBZBh4VuOP/1Tenwv/OLg7jUOr+qfI6lJYkSMdjAUaOt5pFtl24qQ90kEI1ykSfJUHsGGOH92TGk3k+OVyITp86J8b9RSo6ij3YOaDK/S343FF9NdRyljxO1SCxIHFMBYH8JcCsWmABBawnUIPhCl5lfvOgl/lIA94RP6l6u/aeWvXEPpqfvGbC4N9IpysSI3Gm4X/PZoUvCeYa/RmZ/jZ6t2kVDVMHsudKx+cZ/200IHgXg9GII7HUA9iT5xCCWRiswuWvHrkz2AWF3lj39kD6gzNzE+agc8p25Rb3YNMOpjSU/bwe9d+BtyZ6FV9WTAIlwnVYwaswke5TNgKXw1kIajIobjMczGVmPwgx1F/Lh+3d7ePkFXZmW/0wqFg3RBjivWi7JYj7TDn3YdtkfExEP52reeo19yH6rmKmXsx5MJFWCRI2h/iZQvngsMA/dTBIBYQTUQj6SqMDhnkl8w2IqU0JBVcs3GCNybKUUiMBTFF7T2A3+XrgVESpUtzDbcsNLInE+95f5akS0/5bSwT1ML6N2irTdpqpHFBj/I+WdbCtQVZSOHsgtODUOf5RCoI3+9UFfoa+qEEerr9GjTLyi816/FqHLTEnHPNmHwP4M+3ahQgBCmJ7+ZUXPSDPl9gHJuFkIaQ6MSUIueJR7MRvb3zwzlFYscgJdzLtMvHwQ+JUtEf8gWCuPZq3bJe2KSjr9hLqwV2Gsa2PaldMwlURA8M4rNV+l0R5FsnTUXTOdn7sbfIYtBAb5O8wMu4Q09BAiNx3D+V2yeJ5TWAjYybRgf2qbg4rsQfhKaV7J/8O/j/RcmAYioL6cbmlqQ5Uzq3XzpX9jhBsOrE2EPz6c39ITn145rNm8n8qDJXk5 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: Introduce hierarchical per-cpu counters and use them for rss tracking to fix the per-mm RSS tracking which has become too inaccurate for OOM killer purposes on large many-core systems. The approach proposed here is to replace this by the hierarchical per-cpu counters, which bounds the inaccuracy based on the system topology with O(N*logN). Testing and feedback are welcome! Thanks, Mathieu Cc: Andrew Morton Cc: "Paul E. McKenney" Cc: Steven Rostedt Cc: Masami Hiramatsu Cc: Mathieu Desnoyers Cc: Dennis Zhou Cc: Tejun Heo Cc: Christoph Lameter Cc: Martin Liu Cc: David Rientjes Cc: christian.koenig@amd.com Cc: Shakeel Butt Cc: Johannes Weiner Cc: Sweet Tea Dorminy Cc: Lorenzo Stoakes Cc: "Liam R . Howlett" Cc: Suren Baghdasaryan Cc: Vlastimil Babka Cc: Christian Brauner Cc: Wei Yang Cc: David Hildenbrand Cc: Miaohe Lin Cc: Al Viro Cc: linux-mm@kvack.org Cc: linux-trace-kernel@vger.kernel.org Cc: Yu Zhao Cc: Roman Gushchin Cc: Mateusz Guzik Cc: Matthew Wilcox Mathieu Desnoyers (2): lib: Introduce hierarchical per-cpu counters mm: Fix OOM killer inaccuracy on large many-core systems include/linux/mm.h | 10 +- include/linux/mm_types.h | 4 +- include/linux/percpu_counter_tree.h | 108 ++++++++ include/trace/events/kmem.h | 2 +- kernel/fork.c | 31 ++- lib/Makefile | 1 + lib/percpu_counter_tree.c | 393 ++++++++++++++++++++++++++++ 7 files changed, 532 insertions(+), 17 deletions(-) create mode 100644 include/linux/percpu_counter_tree.h create mode 100644 lib/percpu_counter_tree.c -- 2.39.5