Re: [PATCH 5/5] tools/mm: Update the usage output to be more organized

From: Vlastimil Babka
Date: Tue Oct 17 2023 - 04:13:59 EST


On 10/13/23 21:03, Audra Mitchell wrote:
> Organize the usage options alphabetically and improve the description
> of some options. Also separate the more complicated cull options from
> the single use compare options.
>
> Signed-off-by: Audra Mitchell <audra@xxxxxxxxxx>

Acked-by: Vlastimil Babka <vbabka@xxxxxxx>

Thanks a lot for making the tool useful again!

> ---
> tools/mm/page_owner_sort.c | 33 ++++++++++++++++++++-------------
> 1 file changed, 20 insertions(+), 13 deletions(-)
>
> diff --git a/tools/mm/page_owner_sort.c b/tools/mm/page_owner_sort.c
> index 5a260096ebaa..e1f264444342 100644
> --- a/tools/mm/page_owner_sort.c
> +++ b/tools/mm/page_owner_sort.c
> @@ -634,19 +634,26 @@ static void print_allocator(FILE *out, int allocator)
> static void usage(void)
> {
> printf("Usage: ./page_owner_sort [OPTIONS] <input> <output>\n"
> - "-m\t\tSort by total memory.\n"
> - "-s\t\tSort by the stack trace.\n"
> - "-t\t\tSort by times (default).\n"
> - "-p\t\tSort by pid.\n"
> - "-P\t\tSort by tgid.\n"
> - "-n\t\tSort by task command name.\n"
> - "-a\t\tSort by memory allocate time.\n"
> - "-d\t\tPrint debug information.\n"
> - "--pid <pidlist>\tSelect by pid. This selects the information of blocks whose process ID numbers appear in <pidlist>.\n"
> - "--tgid <tgidlist>\tSelect by tgid. This selects the information of blocks whose Thread Group ID numbers appear in <tgidlist>.\n"
> - "--name <cmdlist>\n\t\tSelect by command name. This selects the information of blocks whose command name appears in <cmdlist>.\n"
> - "--cull <rules>\tCull by user-defined rules.<rules> is a single argument in the form of a comma-separated list with some common fields predefined\n"
> - "--sort <order>\tSpecify sort order as: [+|-]key[,[+|-]key[,...]]\n"
> + "-a\t\t\tSort by memory allocation time.\n"
> + "-m\t\t\tSort by total memory.\n"
> + "-n\t\t\tSort by task command name.\n"
> + "-p\t\t\tSort by pid.\n"
> + "-P\t\t\tSort by tgid.\n"
> + "-s\t\t\tSort by the stacktrace.\n"
> + "-t\t\t\tSort by number of times record is seen (default).\n\n"
> + "--pid <pidlist>\t\tSelect by pid. This selects the information"
> + " of\n\t\t\tblocks whose process ID numbers appear in <pidlist>.\n"
> + "--tgid <tgidlist>\tSelect by tgid. This selects the information"
> + " of\n\t\t\tblocks whose Thread Group ID numbers appear in "
> + "<tgidlist>.\n"
> + "--name <cmdlist>\tSelect by command name. This selects the"
> + " information\n\t\t\tof blocks whose command name appears in"
> + " <cmdlist>.\n"
> + "--cull <rules>\t\tCull by user-defined rules. <rules> is a "
> + "single\n\t\t\targument in the form of a comma-separated list "
> + "with some\n\t\t\tcommon fields predefined (pid, tgid, comm, "
> + "stacktrace, allocator)\n"
> + "--sort <order>\t\tSpecify sort order as: [+|-]key[,[+|-]key[,...]]\n"
> );
> }
>