On 10/3/13 6:38 AM, Ingo Molnar wrote:

* Ramkumar Ramachandra <artag...@gmail.com> wrote:

+       /* 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");

Is missing permissions the only way how is_valid_tracepoint() can fail?

What if debugfs has the right permissions but CONFIG_TRACEPOINTS is
disabled in the kernel?

There are a number of reasons that function can fail. The complete solution is to plumb various error numbers and on failure request a string for that failure. Take a look at util/target.[ch] as an example.

The comment applies to the perf-trace patch as well, but it gets more complicated to handle the error paths from perf_evsel__newtp when they dip into the tracepoint code

David

--
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/

Reply via email to