Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1680431

[PATCHv2 01/15] perf tools: Fix -n option

From Jiri Olsa <jolsa@redhat.com>
Newsgroups linux.kernel
Subject [PATCHv2 01/15] perf tools: Fix -n option
Date 2017-07-03 17:20 +0200
Message-ID <tZbiO-3ib-31@gated-at.bofh.it> (permalink)
References <tZaZr-2UC-7@gated-at.bofh.it> <tZaZt-2UC-77@gated-at.bofh.it> <tZaZt-2UC-79@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Mon, Jul 03, 2017 at 11:57:39AM -0300, Arnaldo Carvalho de Melo wrote:
> Em Mon, Jul 03, 2017 at 04:50:16PM +0200, Jiri Olsa escreveu:
> > The kernel fails to add a non sampling event event
> > with having precise_ip set.
> > 
> > Make sure the precise_ip is 0 when using -n option
> > to create non sampling event in record.
> 
> Ok, but how could that happen? What was the scenario? Which command? Can
> you provide a command line that causes the problem?

[jolsa@krava perf]$ ./perf record -e cycles:ppp -n ls
Lowering default frequency rate to 3000.
Please consider tweaking /proc/sys/kernel/perf_event_max_sample_rate.
Error:
The sys_perf_event_open() syscall returned with 22 (Invalid argument) for event (cycles:pppu).
/bin/dmesg may provide additional information.
No CONFIG_PERF_EVENTS=y kernel support configured?

v2 attached, thanks
jirka


---
The kernel fails to add a non sampling event event
with having precise_ip set, like:

  $ perf record -e cycles:ppp -n ls
  Error:
  The sys_perf_event_open() syscall returned with 22 (Invalid argument) for event (cycles:pppu).
  /bin/dmesg may provide additional information.
  No CONFIG_PERF_EVENTS=y kernel support configured?

Make sure the precise_ip is 0 when using -n option
to create non sampling event in record.

Link: http://lkml.kernel.org/n/tip-l513fzc1houvu7tl1bo5y65y@git.kernel.org
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
---
 tools/perf/util/evsel.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c
index 6f4882f8d61f..915fe3cd6544 100644
--- a/tools/perf/util/evsel.c
+++ b/tools/perf/util/evsel.c
@@ -890,8 +890,10 @@ void perf_evsel__config(struct perf_evsel *evsel, struct record_opts *opts,
 		attr->sample_period = 0;
 	}
 
-	if (opts->no_samples)
+	if (opts->no_samples) {
 		attr->sample_freq = 0;
+		attr->precise_ip = 0;
+	}
 
 	if (opts->inherit_stat)
 		attr->inherit_stat = 1;
-- 
2.9.4

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Re: [PATCH 01/15] perf tools: Fix -n option Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-07-03 17:00 +0200
  [PATCHv2 01/15] perf tools: Fix -n option Jiri Olsa <jolsa@redhat.com> - 2017-07-03 17:20 +0200
    Re: [PATCHv2 01/15] perf tools: Fix -n option Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-07-03 18:20 +0200
      Re: [PATCHv2 01/15] perf tools: Fix -n option Jiri Olsa <jolsa@redhat.com> - 2017-07-03 18:30 +0200
        Re: [PATCHv2 01/15] perf tools: Fix -n option Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-07-03 18:50 +0200
          Re: [PATCHv2 01/15] perf tools: Fix -n option Jiri Olsa <jolsa@redhat.com> - 2017-07-03 19:00 +0200
            Re: [PATCHv2 01/15] perf tools: Fix -n option Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-07-03 19:50 +0200

csiph-web