Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef __PERF_STREAM_H
3#define __PERF_STREAM_H
4
5struct callchain_node;
6struct evlist;
7struct evsel;
8
9struct stream {
10 struct callchain_node *cnode;
11 struct callchain_node *pair_cnode;
12};
13
14struct evsel_streams {
15 struct stream *streams;
16 const struct evsel *evsel;
17 int nr_streams_max;
18 int nr_streams;
19 u64 streams_hits;
20};
21
22struct evlist_streams {
23 struct evsel_streams *ev_streams;
24 int nr_evsel;
25};
26
27void evlist_streams__delete(struct evlist_streams *els);
28
29struct evlist_streams *evlist__create_streams(struct evlist *evlist,
30 int nr_streams_max);
31
32struct evsel_streams *evsel_streams__entry(struct evlist_streams *els,
33 const struct evsel *evsel);
34
35void evsel_streams__match(struct evsel_streams *es_base,
36 struct evsel_streams *es_pair);
37
38void evsel_streams__report(struct evsel_streams *es_base,
39 struct evsel_streams *es_pair);
40
41#endif /* __PERF_STREAM_H */