perf auxtrace: Add auxtrace_record__read_finish()
All ->read_finish() implementations are doing the same thing. Add a helper function so that they can share the same implementation. Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> Reviewed-by: Leo Yan <leo.yan@linaro.org> Tested-by: Leo Yan <leo.yan@linaro.org> Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org> Cc: Jiri Olsa <jolsa@redhat.com> Cc: Kim Phillips <kim.phillips@arm.com> Cc: Wei Li <liwei391@huawei.com> Link: http://lore.kernel.org/lkml/20200217082300.6301-1-adrian.hunter@intel.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:

committed by
Arnaldo Carvalho de Melo

parent
d6bc34c5ec
commit
ad60ba0c2e
@@ -629,8 +629,10 @@ int auxtrace_record__options(struct auxtrace_record *itr,
|
||||
struct evlist *evlist,
|
||||
struct record_opts *opts)
|
||||
{
|
||||
if (itr)
|
||||
if (itr) {
|
||||
itr->evlist = evlist;
|
||||
return itr->recording_options(itr, evlist, opts);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -664,6 +666,24 @@ int auxtrace_parse_snapshot_options(struct auxtrace_record *itr,
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
int auxtrace_record__read_finish(struct auxtrace_record *itr, int idx)
|
||||
{
|
||||
struct evsel *evsel;
|
||||
|
||||
if (!itr->evlist || !itr->pmu)
|
||||
return -EINVAL;
|
||||
|
||||
evlist__for_each_entry(itr->evlist, evsel) {
|
||||
if (evsel->core.attr.type == itr->pmu->type) {
|
||||
if (evsel->disabled)
|
||||
return 0;
|
||||
return perf_evlist__enable_event_idx(itr->evlist, evsel,
|
||||
idx);
|
||||
}
|
||||
}
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
/*
|
||||
* Event record size is 16-bit which results in a maximum size of about 64KiB.
|
||||
* Allow about 4KiB for the rest of the sample record, to give a maximum
|
||||
|
Reference in New Issue
Block a user