[PATCH 0/4] mm/ksm: fix some accounting problems

From: Chengming Zhou
Date: Wed May 08 2024 - 05:56:42 EST


We encounter some abnormal ksm_pages_scanned and ksm_zero_pages during
some random tests.

1. ksm_pages_scanned unchanged even ksmd scanning has progress.
2. ksm_zero_pages maybe -1 in some rare cases.

The first two patches fix these problems and the last two patches are
minor optimizations about ksm_stable_node and general_profit calculation.

Thanks for review and comments!

Signed-off-by: Chengming Zhou <chengming.zhou@xxxxxxxxx>
---
Chengming Zhou (4):
mm/ksm: fix ksm_pages_scanned accounting
mm/ksm: fix ksm_zero_pages accounting
mm/ksm: union hlist_node with list_head in struct ksm_stable_node
mm/ksm: calculate general_profit more accurately

fs/proc/base.c | 2 +-
include/linux/ksm.h | 22 +++++++++++++++++++---
include/linux/mm_types.h | 2 +-
mm/ksm.c | 33 ++++++++++++++++++++-------------
4 files changed, 41 insertions(+), 18 deletions(-)
---
base-commit: fb0f40125feec3de7ef4524600ac83946207117e
change-id: 20240508-b4-ksm-counters-04817b40d3ee

Best regards,
--
Chengming Zhou <chengming.zhou@xxxxxxxxx>