Messages in this thread Patch in this message | | | From | Ramkumar Ramachandra <> | Subject | [PATCH] perf tool: report user-friendly error from timechart | Date | Thu, 3 Oct 2013 14:35:46 +0530 |
| |
Earlier, when 'timechart record' was invoked by a user without permissions to debugfs:
$ perf timechart record invalid or unsupported event: 'power:cpu_frequency' Run 'perf list' for a list of valid events
usage: perf record [<options>] [<command>] or: perf record [<options>] -- <command> [<options>] [... detailed usage information ...]
This is highly user unfriendly, as the real problem is not reported to the user correctly. Now, the user gets a much more friendly:
$ perf timechart record Error: No permissions to read $debugfs/tracing/events/power/cpu_frequency Hint: Change the permissions of debugfs: /sys/kernel/debug The directory will be present if your kernel was compiled with debugfs support.
Cc: Ingo Molnar <mingo@kernel.org> Cc: Jiri Olsa <jolsa@redhat.com> Cc: Arnaldo Carvalho de Melo <acme@ghostprotocols.net> Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com> --- tools/perf/builtin-timechart.c | 8 ++++++++ 1 file changed, 8 insertions(+)
diff --git a/tools/perf/builtin-timechart.c b/tools/perf/builtin-timechart.c index c2e0231..ceaf9b8 100644 --- a/tools/perf/builtin-timechart.c +++ b/tools/perf/builtin-timechart.c @@ -1056,6 +1056,14 @@ static int __cmd_record(int argc, const char **argv) } #endif + /* Perform a quick sanity check */ + if (!is_valid_tracepoint("power:cpu_frequency")) { + fprintf(stderr, "Error:\tNo permissions to read $debugfs/tracing/events/power/cpu_frequency\n"); + fprintf(stderr, "Hint:\tChange the permissions of debugfs: /sys/kernel/debug\n"); + fprintf(stderr, "\tThe directory will be present if your kernel was compiled with debugfs support.\n"); + return 1; + } + rec_argc = record_elems + argc - 1; rec_argv = calloc(rec_argc + 1, sizeof(char *)); -- 1.8.4.477.g5d89aa9
| |