Lines Matching refs:leader
421 evsel->core.leader = orig->core.leader; in evsel__clone()
1147 struct evsel *leader = evsel__leader(evsel); in evsel__config() local
1173 if (leader->core.nr_members > 1) { in evsel__config()
1569 static bool evsel__group_has_tpebs(struct evsel *leader) in evsel__group_has_tpebs() argument
1573 for_each_group_evsel(evsel, leader) { in evsel__group_has_tpebs()
1580 static u64 evsel__group_read_nr_members(struct evsel *leader) in evsel__group_read_nr_members() argument
1582 u64 nr = leader->core.nr_members; in evsel__group_read_nr_members()
1585 for_each_group_evsel(evsel, leader) { in evsel__group_read_nr_members()
1592 static u64 evsel__group_read_size(struct evsel *leader) in evsel__group_read_size() argument
1594 u64 read_format = leader->core.attr.read_format; in evsel__group_read_size()
1599 if (!evsel__group_has_tpebs(leader)) in evsel__group_read_size()
1600 return perf_evsel__read_size(&leader->core); in evsel__group_read_size()
1615 nr = evsel__group_read_nr_members(leader); in evsel__group_read_size()
1623 static int evsel__process_group_data(struct evsel *leader, int cpu_map_idx, int thread, u64 *data) in evsel__process_group_data() argument
1625 u64 read_format = leader->core.attr.read_format; in evsel__process_group_data()
1631 if (nr != evsel__group_read_nr_members(leader)) in evsel__process_group_data()
1644 counter = evlist__id2evsel(leader->evlist, v->id); in evsel__process_group_data()
1657 static int evsel__read_group(struct evsel *leader, int cpu_map_idx, int thread) in evsel__read_group() argument
1659 struct perf_stat_evsel *ps = leader->stats; in evsel__read_group()
1660 u64 read_format = leader->core.attr.read_format; in evsel__read_group()
1661 int size = evsel__group_read_size(leader); in evsel__read_group()
1667 if (!evsel__is_group_leader(leader)) in evsel__read_group()
1678 if (FD(leader, cpu_map_idx, thread) < 0) in evsel__read_group()
1681 if (readn(FD(leader, cpu_map_idx, thread), data, size) <= 0) in evsel__read_group()
1684 return evsel__process_group_data(leader, cpu_map_idx, thread, data); in evsel__read_group()
1893 struct evsel *leader = evsel__leader(evsel); in evsel__hybrid_group_cpu_map_idx() local
1895 if ((evsel__is_hybrid(evsel) && !evsel__is_hybrid(leader)) || in evsel__hybrid_group_cpu_map_idx()
1896 (!evsel__is_hybrid(evsel) && evsel__is_hybrid(leader))) { in evsel__hybrid_group_cpu_map_idx()
1897 return evsel__match_other_cpu(evsel, leader, cpu_map_idx); in evsel__hybrid_group_cpu_map_idx()
1905 struct evsel *leader = evsel__leader(evsel); in get_group_fd() local
1915 BUG_ON(!leader->core.fd); in get_group_fd()
1921 fd = FD(leader, cpu_map_idx, thread); in get_group_fd()
1922 BUG_ON(fd == -1 && !leader->skippable); in get_group_fd()
2639 struct evsel *leader = evsel__leader(evsel); in evsel__has_branch_counters() local
2642 if (!leader || !evsel->evlist) in evsel__has_branch_counters()
2648 if (leader->br_cntr_nr > 0) in evsel__has_branch_counters()
3489 return container_of(evsel->core.leader, struct evsel, core); in evsel__leader()
3492 bool evsel__has_leader(struct evsel *evsel, struct evsel *leader) in evsel__has_leader() argument
3494 return evsel->core.leader == &leader->core; in evsel__has_leader()
3502 void evsel__set_leader(struct evsel *evsel, struct evsel *leader) in evsel__set_leader() argument
3504 evsel->core.leader = &leader->core; in evsel__set_leader()
3529 void evsel__remove_from_group(struct evsel *evsel, struct evsel *leader) in evsel__remove_from_group() argument
3531 if (!arch_evsel__must_be_in_group(evsel) && evsel != leader) { in evsel__remove_from_group()
3534 leader->core.nr_members--; in evsel__remove_from_group()