Em Wed, Jul 08, 2020 at 11:39:19AM -0700, Ian Rogers escreveu:
> perf kmem has an input file option but current an output file option
> fails:
> ```
> $ sudo perf kmem record -o /tmp/p.data sleep 1  
>  Error: unknown switch `o'
> 
> Usage: perf kmem [<options>] {record|stat}
> 
>    -f, --force           don't complain, do it
>    -i, --input <file>    input file name
>    -l, --line <num>      show n lines
>    -s, --sort <key[,key2...]>
>                          sort by keys: ptr, callsite, bytes, hit, pingpong, 
> frag, page, order, mig>
>    -v, --verbose         be more verbose (show symbol address, etc)
>        --alloc           show per-allocation statistics
>        --caller          show per-callsite statistics
>        --live            Show live page stat
>        --page            Analyze page allocator
>        --raw-ip          show raw ip instead of symbol
>        --slab            Analyze slab allocator
>        --time <str>      Time span of interest (start,stop)
> ```
> perf sched is similar in implementation and avoids the problem by
> passing additional arguments to perf record. This change makes perf kmem
> parse command line options consistently with perf sched, although
> neither actually list that -o is a supported option.

Thanks, tested and applied.

- Arnaldo
 
> Signed-off-by: Ian Rogers <irog...@google.com>
> ---
>  tools/perf/builtin-kmem.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/tools/perf/builtin-kmem.c b/tools/perf/builtin-kmem.c
> index 38a5ab683ebc..a50dae2c4ae9 100644
> --- a/tools/perf/builtin-kmem.c
> +++ b/tools/perf/builtin-kmem.c
> @@ -1933,7 +1933,8 @@ int cmd_kmem(int argc, const char **argv)
>               return ret;
>  
>       argc = parse_options_subcommand(argc, argv, kmem_options,
> -                                     kmem_subcommands, kmem_usage, 0);
> +                                     kmem_subcommands, kmem_usage,
> +                                     PARSE_OPT_STOP_AT_NON_OPTION);
>  
>       if (!argc)
>               usage_with_options(kmem_usage, kmem_options);
> -- 
> 2.27.0.383.g050319c2ae-goog
> 

-- 

- Arnaldo

Reply via email to