From: xu xin <xu.xin16@xxxxxxxxxx> 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 cgroup v1 temporarily; cgroup v2 compatibility is planned for future versions. xu xin (6): memcontrol: rename mem_cgroup_scan_tasks() memcontrol: introduce the new mem_cgroup_scan_tasks() memcontrol-v1: introduce ksm_stat at cgroup level memcontrol-v1: add ksm_zero_pages in cgroup/memory.ksm_stat memcontrol-v1: add ksm_merging_pages in cgroup/memory.ksm_stat memcontrol-v1: add ksm_profit in cgroup/memory.ksm_stat include/linux/memcontrol.h | 7 +++++ mm/memcontrol-v1.c | 55 ++++++++++++++++++++++++++++++++++++++ mm/memcontrol.c | 28 +++++++++++++++++-- mm/oom_kill.c | 6 ++--- 4 files changed, 91 insertions(+), 5 deletions(-) -- 2.39.3