aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorArnaldo Carvalho de Melo <acme@redhat.com>2017-02-13 14:45:24 -0500
committerArnaldo Carvalho de Melo <acme@redhat.com>2017-02-13 15:22:33 -0500
commitd6195a6a2c247515d5832debb51c03a74dc3f8f6 (patch)
tree18a5f7ae1648ab4167c8f2db7fd372b031bce600 /tools
parente8c6f437fd12d39e462962eaed2315bac597d34c (diff)
perf evsel: Inform how to make a sysctl setting permanent
When a tool can't open counters due to the kernel.perf_event_paranoit sysctl setting, we inform how to tweak it to allow the operation to succeed, in addition to that, suggest setting /etc/sysctl.conf to make the setting permanent. Suggested-by: Ingo Molnar <mingo@kernel.org> Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: David Ahern <dsahern@gmail.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Wang Nan <wangnan0@huawei.com> Link: http://lkml.kernel.org/n/tip-4gwe99k4a6p12d4u8bbyttj2@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools')
-rw-r--r--tools/perf/builtin-record.c2
-rw-r--r--tools/perf/builtin-stat.c2
-rw-r--r--tools/perf/builtin-top.c2
-rw-r--r--tools/perf/util/evsel.c4
4 files changed, 6 insertions, 4 deletions
diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c
index ffac8ca9fb01..2ddf189968dc 100644
--- a/tools/perf/builtin-record.c
+++ b/tools/perf/builtin-record.c
@@ -418,7 +418,7 @@ static int record__mmap(struct record *rec)
418 418
419static int record__open(struct record *rec) 419static int record__open(struct record *rec)
420{ 420{
421 char msg[512]; 421 char msg[BUFSIZ];
422 struct perf_evsel *pos; 422 struct perf_evsel *pos;
423 struct perf_evlist *evlist = rec->evlist; 423 struct perf_evlist *evlist = rec->evlist;
424 struct perf_session *session = rec->session; 424 struct perf_session *session = rec->session;
diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c
index a02f2e965628..f28719178b51 100644
--- a/tools/perf/builtin-stat.c
+++ b/tools/perf/builtin-stat.c
@@ -533,7 +533,7 @@ static int store_counter_ids(struct perf_evsel *counter)
533static int __run_perf_stat(int argc, const char **argv) 533static int __run_perf_stat(int argc, const char **argv)
534{ 534{
535 int interval = stat_config.interval; 535 int interval = stat_config.interval;
536 char msg[512]; 536 char msg[BUFSIZ];
537 unsigned long long t0, t1; 537 unsigned long long t0, t1;
538 struct perf_evsel *counter; 538 struct perf_evsel *counter;
539 struct timespec ts; 539 struct timespec ts;
diff --git a/tools/perf/builtin-top.c b/tools/perf/builtin-top.c
index d90927f31ff6..5a7fd7af3a6d 100644
--- a/tools/perf/builtin-top.c
+++ b/tools/perf/builtin-top.c
@@ -859,7 +859,7 @@ static void perf_top__mmap_read(struct perf_top *top)
859 859
860static int perf_top__start_counters(struct perf_top *top) 860static int perf_top__start_counters(struct perf_top *top)
861{ 861{
862 char msg[512]; 862 char msg[BUFSIZ];
863 struct perf_evsel *counter; 863 struct perf_evsel *counter;
864 struct perf_evlist *evlist = top->evlist; 864 struct perf_evlist *evlist = top->evlist;
865 struct record_opts *opts = &top->record_opts; 865 struct record_opts *opts = &top->record_opts;
diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c
index 04e536ae4d88..cd2fb42e5dd4 100644
--- a/tools/perf/util/evsel.c
+++ b/tools/perf/util/evsel.c
@@ -2469,7 +2469,9 @@ int perf_evsel__open_strerror(struct perf_evsel *evsel, struct target *target,
2469 " -1: Allow use of (almost) all events by all users\n" 2469 " -1: Allow use of (almost) all events by all users\n"
2470 ">= 0: Disallow raw tracepoint access by users without CAP_IOC_LOCK\n" 2470 ">= 0: Disallow raw tracepoint access by users without CAP_IOC_LOCK\n"
2471 ">= 1: Disallow CPU event access by users without CAP_SYS_ADMIN\n" 2471 ">= 1: Disallow CPU event access by users without CAP_SYS_ADMIN\n"
2472 ">= 2: Disallow kernel profiling by users without CAP_SYS_ADMIN", 2472 ">= 2: Disallow kernel profiling by users without CAP_SYS_ADMIN\n\n"
2473 "To make this setting permanent, edit /etc/sysctl.conf too, e.g.:\n\n"
2474 " kernel.perf_event_paranoid = -1\n" ,
2473 target->system_wide ? "system-wide " : "", 2475 target->system_wide ? "system-wide " : "",
2474 perf_event_paranoid()); 2476 perf_event_paranoid());
2475 case ENOENT: 2477 case ENOENT: