Commit-ID:  73e5de70dca00344cb48e018131a4cadec0fabf0
Gitweb:     https://git.kernel.org/tip/73e5de70dca00344cb48e018131a4cadec0fabf0
Author:     Arnaldo Carvalho de Melo <a...@redhat.com>
AuthorDate: Mon, 12 Aug 2019 17:27:11 -0300
Committer:  Arnaldo Carvalho de Melo <a...@redhat.com>
CommitDate: Wed, 14 Aug 2019 10:59:59 -0300

perf ftrace: Improve error message about capability to use ftrace

If we link against libcap, then we can state that CAP_SYS_ADMIN is
needed, if not, fallback to telling the user it needs to be root, as was
before linking against libcap.

Cc: Adrian Hunter <adrian.hun...@intel.com>
Cc: Alexander Shishkin <alexander.shish...@linux.intel.com>
Cc: Alexey Budankov <alexey.budan...@linux.intel.com>
Cc: Igor Lubashev <iluba...@akamai.com>
Cc: James Morris <jmor...@namei.org>
Cc: Jiri Olsa <jo...@kernel.org>
Cc: Mathieu Poirier <mathieu.poir...@linaro.org>
Cc: Namhyung Kim <namhy...@kernel.org>
Cc: Peter Zijlstra <pet...@infradead.org>
Cc: Suzuki Poulouse <suzuki.poul...@arm.com>
Link: https://lkml.kernel.org/n/tip-hhnbjdo8r67054of9zm2k...@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <a...@redhat.com>
---
 tools/perf/builtin-ftrace.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/tools/perf/builtin-ftrace.c b/tools/perf/builtin-ftrace.c
index 01a5bb58eb04..1367bb5046a7 100644
--- a/tools/perf/builtin-ftrace.c
+++ b/tools/perf/builtin-ftrace.c
@@ -284,7 +284,13 @@ static int __cmd_ftrace(struct perf_ftrace *ftrace, int 
argc, const char **argv)
        };
 
        if (!perf_cap__capable(CAP_SYS_ADMIN)) {
-               pr_err("ftrace only works for root!\n");
+               pr_err("ftrace only works for %s!\n",
+#ifdef HAVE_LIBCAP_SUPPORT
+               "users with the SYS_ADMIN capability"
+#else
+               "root"
+#endif
+               );
                return -1;
        }
 

Reply via email to