perf streams: Get the evsel_streams by evsel_idx
authorJin Yao <yao.jin@linux.intel.com>
Fri, 9 Oct 2020 02:28:40 +0000 (10:28 +0800)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Wed, 14 Oct 2020 16:30:13 +0000 (13:30 -0300)
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.jin@linux.intel.com>
Acked-by: Jiri Olsa <jolsa@kernel.org>
Link: https://lore.kernel.org/r/20201009022845.13141-3-yao.jin@linux.intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/stream.c
tools/perf/util/stream.h

index 31efe4a..e1c7d6c 100644 (file)
@@ -162,3 +162,16 @@ struct evlist_streams *evlist__create_streams(struct evlist *evlist,
 
        return els;
 }
+
+struct evsel_streams *evsel_streams__entry(struct evlist_streams *els,
+                                          int evsel_idx)
+{
+       struct evsel_streams *es = els->ev_streams;
+
+       for (int i = 0; i < els->nr_evsel; i++) {
+               if (es[i].evsel_idx == evsel_idx)
+                       return &es[i];
+       }
+
+       return NULL;
+}
index 35bc64d..f013356 100644 (file)
@@ -27,4 +27,7 @@ void evlist_streams__delete(struct evlist_streams *els);
 struct evlist_streams *evlist__create_streams(struct evlist *evlist,
                                              int nr_streams_max);
 
+struct evsel_streams *evsel_streams__entry(struct evlist_streams *els,
+                                          int evsel_idx);
+
 #endif /* __PERF_STREAM_H */