Em Tue, Sep 18, 2018 at 05:32:06AM -0700, Andi Kleen escreveu:
> From: Andi Kleen <[email protected]>
> 
> I often forget all the options that --itrace accepts. Instead of burying
> them in the man page only report them in the normal command line help
> too to make them easier accessible.

Looks reasonable, applied.

- Arnaldo
 
> v2: Align
> Signed-off-by: Andi Kleen <[email protected]>
> ---
>  tools/perf/builtin-inject.c |  3 ++-
>  tools/perf/builtin-report.c |  2 +-
>  tools/perf/builtin-script.c |  2 +-
>  tools/perf/util/auxtrace.h  | 19 +++++++++++++++++++
>  4 files changed, 23 insertions(+), 3 deletions(-)
> 
> diff --git a/tools/perf/builtin-inject.c b/tools/perf/builtin-inject.c
> index a3b346359ba0..b649a0511ed8 100644
> --- a/tools/perf/builtin-inject.c
> +++ b/tools/perf/builtin-inject.c
> @@ -803,7 +803,8 @@ int cmd_inject(int argc, const char **argv)
>                          "kallsyms pathname"),
>               OPT_BOOLEAN('f', "force", &data.force, "don't complain, do it"),
>               OPT_CALLBACK_OPTARG(0, "itrace", &inject.itrace_synth_opts,
> -                                 NULL, "opts", "Instruction Tracing options",
> +                                 NULL, "opts", "Instruction Tracing 
> options\n"
> +                                 ITRACE_HELP,
>                                   itrace_parse_synth_opts),
>               OPT_BOOLEAN(0, "strip", &inject.strip,
>                           "strip non-synthesized events (use with --itrace)"),
> diff --git a/tools/perf/builtin-report.c b/tools/perf/builtin-report.c
> index 76e12bcd1765..191a389b45d1 100644
> --- a/tools/perf/builtin-report.c
> +++ b/tools/perf/builtin-report.c
> @@ -1105,7 +1105,7 @@ int cmd_report(int argc, const char **argv)
>       OPT_CALLBACK(0, "percentage", NULL, "relative|absolute",
>                    "how to display percentage of filtered entries", 
> parse_filter_percentage),
>       OPT_CALLBACK_OPTARG(0, "itrace", &itrace_synth_opts, NULL, "opts",
> -                         "Instruction Tracing options",
> +                         "Instruction Tracing options\n" ITRACE_HELP,
>                           itrace_parse_synth_opts),
>       OPT_BOOLEAN(0, "full-source-path", &srcline_full_filename,
>                       "Show full source file name path for source lines"),
> diff --git a/tools/perf/builtin-script.c b/tools/perf/builtin-script.c
> index 6176bae177c2..49d84c85e846 100644
> --- a/tools/perf/builtin-script.c
> +++ b/tools/perf/builtin-script.c
> @@ -3195,7 +3195,7 @@ int cmd_script(int argc, const char **argv)
>       OPT_BOOLEAN(0, "ns", &nanosecs,
>                   "Use 9 decimal places when displaying time"),
>       OPT_CALLBACK_OPTARG(0, "itrace", &itrace_synth_opts, NULL, "opts",
> -                         "Instruction Tracing options",
> +                         "Instruction Tracing options\n" ITRACE_HELP,
>                           itrace_parse_synth_opts),
>       OPT_BOOLEAN(0, "full-source-path", &srcline_full_filename,
>                       "Show full source file name path for source lines"),
> diff --git a/tools/perf/util/auxtrace.h b/tools/perf/util/auxtrace.h
> index 71fc3bd74299..a516a891d7ea 100644
> --- a/tools/perf/util/auxtrace.h
> +++ b/tools/perf/util/auxtrace.h
> @@ -577,6 +577,23 @@ static inline void auxtrace__free(struct perf_session 
> *session)
>       return session->auxtrace->free(session);
>  }
>  
> +#define ITRACE_HELP \
> +"                            i:                      synthesize instructions 
> events\n"               \
> +"                            b:                      synthesize branches 
> events\n"           \
> +"                            c:                      synthesize branches 
> events (calls only)\n"      \
> +"                            r:                      synthesize branches 
> events (returns only)\n" \
> +"                            x:                      synthesize transactions 
> events\n"               \
> +"                            w:                      synthesize ptwrite 
> events\n"            \
> +"                            p:                      synthesize power 
> events\n"                      \
> +"                            e:                      synthesize error 
> events\n"                      \
> +"                            d:                      create a debug log\n"   
>                 \
> +"                            g[len]:                 synthesize a call chain 
> (use with i or x)\n" \
> +"                            l[len]:                 synthesize last branch 
> entries (use with i or x)\n" \
> +"                            sNUMBER:                skip initial number of 
> events\n"                \
> +"                            PERIOD[ns|us|ms|i|t]:   specify period to 
> sample stream\n" \
> +"                            concatenate multiple options. Default is ibxwpe 
> or cewp\n"
> +
> +
>  #else
>  
>  static inline struct auxtrace_record *
> @@ -717,6 +734,8 @@ void auxtrace_mmap_params__set_idx(struct 
> auxtrace_mmap_params *mp,
>                                  struct perf_evlist *evlist, int idx,
>                                  bool per_cpu);
>  
> +#define ITRACE_HELP ""
> +
>  #endif
>  
>  #endif
> -- 
> 2.17.1

Reply via email to