From: Barry Song <v-songbaohua@xxxxxxxx> Knowing the number of transparent anon THPs in the system is crucial for performance analysis. It helps in understanding the ratio and distribution of THPs versus small folios throughout the system. Additionally, partial unmapping by userspace can lead to significant waste of THPs over time and increase memory reclamation pressure. We need this information for comprehensive system tuning. -v4: * collect David's acked-by, thanks! * refine subjects, changelogs and docs according to David's comment, thanks very much! -v3: https://lore.kernel.org/linux-mm/20240822224015.93186-1-21cnbao@xxxxxxxxx/ * collect David's acked-by, thanks! * rename nr_split_deferred to meaningful name - nr_anon_partially_mapped, per David. Ryan, I assume you will like it after you come back :-) -v2: https://lore.kernel.org/linux-mm/20240811224940.39876-1-21cnbao@xxxxxxxxx/ * don't rely on rmap to implement - 1, uses folio_free, split etc. Thanks for David's comment; * rename sys counters and refine doc. Thanks for Ryan's comment; -v1: https://lore.kernel.org/all/20240808010457.228753-1-21cnbao@xxxxxxxxx/ Barry Song (2): mm: count the number of anonymous THPs per size mm: count the number of partially mapped anonymous THPs per size Documentation/admin-guide/mm/transhuge.rst | 12 ++++++++++++ include/linux/huge_mm.h | 16 ++++++++++++++-- mm/huge_memory.c | 19 ++++++++++++++++--- mm/migrate.c | 4 ++++ mm/page_alloc.c | 5 ++++- mm/rmap.c | 1 + 6 files changed, 51 insertions(+), 6 deletions(-) -- 2.39.3 (Apple Git-146)