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 B75C2C3ABA3 for ; Thu, 1 May 2025 04:09:10 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1000F6B0089; Thu, 1 May 2025 00:09:08 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 0B1D16B008A; Thu, 1 May 2025 00:09:08 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id EE3676B008C; Thu, 1 May 2025 00:09:07 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id CD0B36B0089 for ; Thu, 1 May 2025 00:09:07 -0400 (EDT) Received: from smtpin25.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 7147CC06A5 for ; Thu, 1 May 2025 04:09:09 +0000 (UTC) X-FDA: 83393008818.25.A964DB0 Received: from mxct.zte.com.cn (mxct.zte.com.cn [183.62.165.209]) by imf07.hostedemail.com (Postfix) with ESMTP id 39C0D40002 for ; Thu, 1 May 2025 04:09:03 +0000 (UTC) Authentication-Results: imf07.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=zte.com.cn; spf=pass (imf07.hostedemail.com: domain of xu.xin16@zte.com.cn designates 183.62.165.209 as permitted sender) smtp.mailfrom=xu.xin16@zte.com.cn ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1746072547; a=rsa-sha256; cv=none; b=riq1b4WzoyWl2135A3nnKqrh2HIhq6Gmdkct61NrOk+nkEbklI3B6B4TkAMhckNYv5uyVm d1nyGd7/3PBPM9QD5GmWIXbEx2SKnpSb6mjxhSC3o0zjJ6MZ4lEz1wXuR86Q8g1UWP8JeX tVI9mOn25p82n+mGB2jJAv41iQaHhH0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1746072547; 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: references; bh=FZ/2SM/qPFCj8qBot6DzrP2HOJNlV9gbgzzd9NfHXJM=; b=acIPb9R0E+bsRVyv/akM9CgnkIj7Q8VdgnpkPphlJQjoBs4aLze94UcHwXRwHtyodcXmC+ p18fVqAzOh8Z9+67WGZhQR4AuMEG4jWzGrp+cwwxkztaBmDBjSIggUA68SxnF7otTIM2YW vP4b7oA6ctpdxhlxDFbyujHte8mPrHY= ARC-Authentication-Results: i=1; imf07.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=zte.com.cn; spf=pass (imf07.hostedemail.com: domain of xu.xin16@zte.com.cn designates 183.62.165.209 as permitted sender) smtp.mailfrom=xu.xin16@zte.com.cn Received: from mse-fl2.zte.com.cn (unknown [10.5.228.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mxct.zte.com.cn (FangMail) with ESMTPS id 4Zp0t13CjTz51SWH; Thu, 1 May 2025 12:08:57 +0800 (CST) Received: from xaxapp02.zte.com.cn ([10.88.97.241]) by mse-fl2.zte.com.cn with SMTP id 54148rMj021500; Thu, 1 May 2025 12:08:53 +0800 (+08) (envelope-from xu.xin16@zte.com.cn) Received: from mapi (xaxapp04[null]) by mapi (Zmail) with MAPI id mid32; Thu, 1 May 2025 12:08:54 +0800 (CST) Date: Thu, 1 May 2025 12:08:54 +0800 (CST) X-Zmail-TransId: 2afb6812f3d6005-4673f X-Mailer: Zmail v1.0 Message-ID: <20250501120854885LyBCW0syCGojqnJ8crLVl@zte.com.cn> Mime-Version: 1.0 From: To: Cc: , , , , , , Subject: =?UTF-8?B?W1BBVENIIHYyIDAvOV0gc3VwcG9ydCBrc21fc3RhdCBzaG93aW5nIGF0IGNncm91cCBsZXZlbA==?= Content-Type: text/plain; charset="UTF-8" X-MAIL:mse-fl2.zte.com.cn 54148rMj021500 X-Fangmail-Anti-Spam-Filtered: true X-Fangmail-MID-QID: 6812F3D9.000/4Zp0t13CjTz51SWH X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 39C0D40002 X-Stat-Signature: jn6pcx71pidzgh7wko3s9wnnrgwqbd1z X-Rspam-User: X-HE-Tag: 1746072543-26688 X-HE-Meta: U2FsdGVkX197GAmkmnmPtEIlrY8QMlV5SP9oGWqAXWWLx2G8nsWzmhA2/62CBXOYCiCFwa7MMzU15Jq9jT4W5RkezIzZJsahK5xd/bj8OhtBRJuuDuv4nBgld+wH7gAvCgSwkyutFw4RsrOms7sYV0FP0ZbelH9BmvPo1EpgtoS6TQZol6YdVhoFNyTpojF1T6TDSS7ZjgXDdrOl8dKLMUZj+XOlaBXPWGQj288wtJwIRD1vhv1SxRbU5gCDPkT5z0DKw9IkKH1Vi8mv6GE9Sr4FdBGwhQxZeyl2zXZf8x1pd7hZaoHoJZc1uzuI5fdX1SEy3lSI/4bx+HVSEZMhwVdpU92NY/fWsmvTee1LSqPlPdXbuqOtOREkccgC9AhHTgPYd+PeZ9UJaPcU5aKcnRW09nNfpdZINQo/NIWz6ZOGnK8BUadloy9IvUCUnMj10C3jmutSJ8TXf4cbdnmR69u46P58dHMLuxUmO5cmQYraBLXAJaatrqkc2RCOZOlluye7ucS8gKt8n2SERm97oPbCEPMlJOjj6sQBMsD+ms+4YtwBAea3c1oDlSNjbz4mNvbshFMjQh7nogZgSEiRbEoFJMAQ3vcdzPpYX/Uc91SCniQhNb8V+obJ0nTvKsvMFJlJtt4xAcffrCZW/STymTxOc8WTf9hnLq07h77hIg9GHgoIAxixPXLx5017i8ci1d+Ka24ViStWcz394T9BhQkpllkBtWDX0gQlecKbfJySRMULCm/sY/Xda2OHSt+ynteHffHSTZoJZnxgFF5lfe6wkLKaOcvFSjWfD1Nq7og3bKKZDhwngYdp5v7vynO58xrjuoPt0GRCuln83lY/2fhZ4ovQzZko8tl+/N2APEe+Jz90GSRFz1Chx56urNWpYdcCSzNSyhiiXp1oKjrPn9HtDCHqt+/GTuJz4IbrbGZtVrz52CV2aXl2f+g3iQr0yaMQ5WvYsLdpNRl4Mpv GnQ00fw1 4ZT+2dKo1Ru5yYYDZNEfU46yE+vWHOMOqX9AFfDEWKn5eHk2MLsB4BGYKPxpMGvEJ/uaGx3fjitwOyNfdhUE4fw/FC5CX3vuQ47Rpc+6O4TnhzWlva7ndJk4nDKBdEmjHxNInAsjlmCy5lMr09gic2LDwAyNGsF0pcuJoi1kOwpFV9Npc9NsQbg29A5zCpY7Em1uwb/QbV919ttwHPL3uRkiYUuVTg0MMB5H0BcoN4T696/w2W0BUlpJ74vuIWPGBavnFusDOSpaw+Is= 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: From: xu xin With the enablement of container-level KSM (e.g., via prctl [1]), there is a growing demand for container-level observability of KSM behavior. However, current cgroup implementations lack support for exposing KSM-related metrics. This patch introduces a new interface named ksm_stat at the cgroup hierarchy level, enabling users to monitor KSM merging statistics specifically for containers where this feature has been activated, eliminating the need to manually inspect KSM information for each individual process within the cgroup. Users can obtain the KSM information of a cgroup just by: # cat /sys/fs/cgroup/memory.ksm_stat ksm_rmap_items 76800 ksm_zero_pages 0 ksm_merging_pages 76800 ksm_process_profit 309657600 Current implementation supports both cgroup v2 and cgroup v1. xu xin (9): memcontrol: rename mem_cgroup_scan_tasks() memcontrol: introduce the new mem_cgroup_scan_tasks() memcontrol: introduce ksm_stat at memcg-v2 memcontrol: add ksm_zero_pages in cgroup/memory.ksm_stat memcontrol: add ksm_merging_pages in cgroup/memory.ksm_stat memcontrol: add ksm_profit in cgroup/memory.ksm_stat memcontrol-v1: add ksm_stat at memcg-v1 Documentation: add ksm_stat description in cgroup-v1/memory.rst Documentation: add ksm_stat description in cgroup-v2.rst Documentation/admin-guide/cgroup-v1/memory.rst | 36 +++++++++++ Documentation/admin-guide/cgroup-v2.rst | 12 ++++ include/linux/memcontrol.h | 14 +++++ mm/memcontrol-v1.c | 6 ++ mm/memcontrol.c | 83 +++++++++++++++++++++++++- mm/oom_kill.c | 6 +- 6 files changed, 152 insertions(+), 5 deletions(-) -- 2.15.2