In previous patch, we have created evsel_streams array This patch returns the specified evsel_streams according to the evsel_idx.
Signed-off-by: Jin Yao <yao....@linux.intel.com> --- v5: - Rebase to perf/core v4: - Rename the patch from 'perf util: Return per-event callchain streams' to 'perf util: Get the evsel_streams by evsel_idx' tools/perf/util/stream.c | 11 +++++++++++ tools/perf/util/stream.h | 3 +++ 2 files changed, 14 insertions(+) diff --git a/tools/perf/util/stream.c b/tools/perf/util/stream.c index 015c1d07ce3a..7882a7f05d97 100644 --- a/tools/perf/util/stream.c +++ b/tools/perf/util/stream.c @@ -146,3 +146,14 @@ struct evsel_streams *perf_evlist__create_streams(struct evlist *evlist, return es; } + +struct evsel_streams *evsel_streams_get(struct evsel_streams *es, + int nr_evsel, int evsel_idx) +{ + for (int i = 0; i < nr_evsel; i++) { + if (es[i].evsel_idx == evsel_idx) + return &es[i]; + } + + return NULL; +} diff --git a/tools/perf/util/stream.h b/tools/perf/util/stream.h index c6844c5787cb..66f61d954eef 100644 --- a/tools/perf/util/stream.h +++ b/tools/perf/util/stream.h @@ -20,4 +20,7 @@ struct evlist; struct evsel_streams *perf_evlist__create_streams(struct evlist *evlist, int nr_streams_max); +struct evsel_streams *evsel_streams_get(struct evsel_streams *es, + int nr_evsel, int evsel_idx); + #endif /* __PERF_STREAM_H */ -- 2.17.1