[PATCH v2 0/3] tools/mm/page_owner_sort: fix --sort, add module filter, improve usage
Ye Liu <[email protected]> Mon, 3 Aug 2026 14:20:53 +0800
| Newsgroups | org.kernel.vger.linux-doc,org.kernel.vger.linux-kernel,org.kvack.linux-mm |
|---|---|
| Message-ID | <[email protected]> |
From: Ye Liu <[email protected]> This series improves the page_owner_sort tool with a bug fix, a new module-name feature, and better usage text. Patch 1 fixes a long-standing bug where --sort was silently ignored when used without a short option (-a, -m, -p, etc.). The COMP_NO_FLAG case fell through to COMP_NUM and overwrote the sort conditions configured by parse_sort_args(). Patch 2 adds kernel module name support for sort, cull, and filter operations. Page owner stack traces already contain module names in the "function+0xNN/0xNN [module]" format produced by %pS, but page_owner_sort had no way to use them. Records without module frames are assigned "vmlinux". # Aggregate page usage per module ./page_owner_sort input.txt output.txt --cull=mod # Filter to records from xfs module only ./page_owner_sort input.txt output.txt --module xfs # Sort by module name, then by pid descending ./page_owner_sort input.txt output.txt --sort=mod,-pid Patch 3 lists all available sort keys with abbreviations and examples directly in the --sort help section so users no longer need to read the source to discover valid keys. Ye Liu (3): tools/mm/page_owner_sort: fix --sort option being silently ignored tools/mm/page_owner_sort: add module name sort/cull/filter support tools/mm/page_owner_sort: show available sort keys in usage text Documentation/mm/page_owner.rst | 8 +- tools/mm/page_owner_sort.c | 135 +++++++++++++++++++++++++++----- 2 files changed, 123 insertions(+), 20 deletions(-) --- v2: - Patch 2: use regexec() directly in get_module() instead of search_pattern() to avoid excessive debug spam for the common vmlinux case when debug_on is true - Patch 2: anchor module regex to stack trace format "+0xNN/0xNN [module]" to prevent false matches on kernel thread comm names like [khugepaged] - Patch 2: add '-' to regex character class to support modules with hyphens (e.g. aa-bb-cc) - Link:https://lore.kernel.org/all/[email protected]/ -- 2.25.1