diff options
| author | David Ahern <dsahern@gmail.com> | 2013-10-30 12:28:29 -0400 |
|---|---|---|
| committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2013-11-05 12:26:41 -0500 |
| commit | 44d742e01e6d3dd544ee1873b660a3c8bc1413bb (patch) | |
| tree | e305d70f0bf65c430a9893a888776b555bd6dace /tools | |
| parent | 8e00ddc9dfe09ee131144fdaf6c96ebe95bbbbcb (diff) | |
perf list: Add usage
Currently 'perf list' is not very helpful if you forget the syntax:
$ perf list -h
List of pre-defined events (to be used in -e):
After:
$ perf list -h
usage: perf list [hw|sw|cache|tracepoint|pmu|event_glob]
Signed-off-by: David Ahern <dsahern@gmail.com>
Acked-by: Ingo Molnar <mingo@kernel.org>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lkml.kernel.org/r/527133AD.4030003@gmail.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools')
| -rw-r--r-- | tools/perf/builtin-list.c | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/tools/perf/builtin-list.c b/tools/perf/builtin-list.c index 45000e7d4398..011195e38f21 100644 --- a/tools/perf/builtin-list.c +++ b/tools/perf/builtin-list.c | |||
| @@ -14,20 +14,31 @@ | |||
| 14 | #include "util/parse-events.h" | 14 | #include "util/parse-events.h" |
| 15 | #include "util/cache.h" | 15 | #include "util/cache.h" |
| 16 | #include "util/pmu.h" | 16 | #include "util/pmu.h" |
| 17 | #include "util/parse-options.h" | ||
| 17 | 18 | ||
| 18 | int cmd_list(int argc, const char **argv, const char *prefix __maybe_unused) | 19 | int cmd_list(int argc, const char **argv, const char *prefix __maybe_unused) |
| 19 | { | 20 | { |
| 20 | int i; | 21 | int i; |
| 22 | const struct option list_options[] = { | ||
| 23 | OPT_END() | ||
| 24 | }; | ||
| 25 | const char * const list_usage[] = { | ||
| 26 | "perf list [hw|sw|cache|tracepoint|pmu|event_glob]", | ||
| 27 | NULL | ||
| 28 | }; | ||
| 29 | |||
| 30 | argc = parse_options(argc, argv, list_options, list_usage, | ||
| 31 | PARSE_OPT_STOP_AT_NON_OPTION); | ||
| 21 | 32 | ||
| 22 | setup_pager(); | 33 | setup_pager(); |
| 23 | 34 | ||
| 24 | if (argc == 1) { | 35 | if (argc == 0) { |
| 25 | print_events(NULL, false); | 36 | print_events(NULL, false); |
| 26 | return 0; | 37 | return 0; |
| 27 | } | 38 | } |
| 28 | 39 | ||
| 29 | for (i = 1; i < argc; ++i) { | 40 | for (i = 0; i < argc; ++i) { |
| 30 | if (i > 2) | 41 | if (i) |
| 31 | putchar('\n'); | 42 | putchar('\n'); |
| 32 | if (strncmp(argv[i], "tracepoint", 10) == 0) | 43 | if (strncmp(argv[i], "tracepoint", 10) == 0) |
| 33 | print_tracepoint_events(NULL, NULL, false); | 44 | print_tracepoint_events(NULL, NULL, false); |
