Messages in this thread Patch in this message | | | Date | Fri, 18 Sep 2015 17:49:55 -0300 | From | Arnaldo Carvalho de Melo <> | Subject | Re: [PATCH] perf record: adding dummy event before mapping |
| |
Em Fri, Sep 18, 2015 at 02:42:04PM -0600, Mathieu Poirier escreveu: > The parameters of function 'perf_evsel__open()' in > 'record_open()' have been changed to use the evsel's cpus and > threads rather than the evlist since: > > commit d988d5ee6478 ("perf evlist: Open event on evsel cpus and threads") > > This works fine for as long as all the events have been added to > the evlist before function 'perf_evlist__create_maps()' is called > since the latter will take care of pushing the cpus and threads of > the evlist to each of the evsel in the list. > > As function 'auxtrace_record__options()' adds a "dummy:u" event to > the evlist it is important that it runs before > 'perf_evlist__create_maps()'.
What tree is this patch for? Please take a look at tip/master, there are patches there that should address this issue, please report if not.
Namely, hey, it was already merged by Linus, see:
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/log/tools
There is a set of very small patches by Adrian Hunter fixing the setting of evsel->{cpus,threads}
Can you check with Linus's git repo? I bet you tried with 4.3-rc1?
- Arnaldo
> Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org> > --- > tools/perf/builtin-record.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c > index 142eeb341b29..630a7a8e3970 100644 > --- a/tools/perf/builtin-record.c > +++ b/tools/perf/builtin-record.c > @@ -1183,14 +1183,14 @@ int cmd_record(int argc, const char **argv, const char *prefix __maybe_unused) > goto out_symbol_exit; > } > > - err = -ENOMEM; > - if (perf_evlist__create_maps(rec->evlist, &rec->opts.target) < 0) > - usage_with_options(record_usage, record_options); > - > err = auxtrace_record__options(rec->itr, rec->evlist, &rec->opts); > if (err) > goto out_symbol_exit; > > + err = -ENOMEM; > + if (perf_evlist__create_maps(rec->evlist, &rec->opts.target) < 0) > + usage_with_options(record_usage, record_options); > + > if (record_opts__config(&rec->opts)) { > err = -EINVAL; > goto out_symbol_exit; > -- > 1.9.1
| |