Example: # perf list test List of pre-defined events (to be used in -e): # echo $? 0
Verification: # perf list test Error: No event for test. Usage: perf list [hw|sw|cache|tracepoint|pmu|event_glob] # echo $? 255 Signed-off-by: Dongsheng Yang <yangds.f...@cn.fujitsu.com> --- tools/perf/builtin-list.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/tools/perf/builtin-list.c b/tools/perf/builtin-list.c index 82d54b6..ba23f65 100644 --- a/tools/perf/builtin-list.c +++ b/tools/perf/builtin-list.c @@ -63,9 +63,11 @@ int cmd_list(int argc, const char **argv, const char *prefix __maybe_unused) else { char *sep = strchr(argv[i], ':'), *s; int sep_idx; + unsigned int count; if (sep == NULL) { - print_events(argv[i], false); + if(!(count = print_events(argv[i], false))) + goto err_out; continue; } sep_idx = sep - argv[i]; @@ -74,9 +76,16 @@ int cmd_list(int argc, const char **argv, const char *prefix __maybe_unused) return -1; s[sep_idx] = '\0'; - print_tracepoint_events(s, s + sep_idx + 1, false); + if (!(count = print_tracepoint_events(s, s + sep_idx + 1, false))) + goto err_out; free(s); } } + return 0; + +err_out: + printf("\nError: No event for %s.\n", argv[i]); + printf("Usage:\n\t%s\n", list_usage[0]); + return -1; } -- 1.8.2.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/