Lines Matching full:leader

517 	evsel->core.leader = orig->core.leader;  in evsel__clone()
964 * Returns the group details for the specified leader,
1290 struct evsel *leader = evsel__leader(evsel); in evsel__config() local
1316 if (leader->core.nr_members > 1) { in evsel__config()
1723 static bool evsel__group_has_tpebs(struct evsel *leader) in evsel__group_has_tpebs() argument
1727 for_each_group_evsel(evsel, leader) { in evsel__group_has_tpebs()
1734 static u64 evsel__group_read_nr_members(struct evsel *leader) in evsel__group_read_nr_members() argument
1736 u64 nr = leader->core.nr_members; in evsel__group_read_nr_members()
1739 for_each_group_evsel(evsel, leader) { in evsel__group_read_nr_members()
1746 static u64 evsel__group_read_size(struct evsel *leader) in evsel__group_read_size() argument
1748 u64 read_format = leader->core.attr.read_format; in evsel__group_read_size()
1753 if (!evsel__group_has_tpebs(leader)) in evsel__group_read_size()
1754 return perf_evsel__read_size(&leader->core); in evsel__group_read_size()
1769 nr = evsel__group_read_nr_members(leader); in evsel__group_read_size()
1777 static int evsel__process_group_data(struct evsel *leader, int cpu_map_idx, int thread, u64 *data) in evsel__process_group_data() argument
1779 u64 read_format = leader->core.attr.read_format; in evsel__process_group_data()
1785 if (nr != evsel__group_read_nr_members(leader)) in evsel__process_group_data()
1798 counter = evlist__id2evsel(leader->evlist, v->id); in evsel__process_group_data()
1811 static int evsel__read_group(struct evsel *leader, int cpu_map_idx, int thread) in evsel__read_group() argument
1813 struct perf_stat_evsel *ps = leader->stats; in evsel__read_group()
1814 u64 read_format = leader->core.attr.read_format; in evsel__read_group()
1815 int size = evsel__group_read_size(leader); in evsel__read_group()
1821 if (!evsel__is_group_leader(leader)) in evsel__read_group()
1832 if (FD(leader, cpu_map_idx, thread) < 0) in evsel__read_group()
1835 if (readn(FD(leader, cpu_map_idx, thread), data, size) <= 0) in evsel__read_group()
1838 return evsel__process_group_data(leader, cpu_map_idx, thread, data); in evsel__read_group()
1907 struct evsel *leader = evsel__leader(evsel); in evsel__hybrid_group_cpu_map_idx() local
1909 if ((evsel__is_hybrid(evsel) && !evsel__is_hybrid(leader)) || in evsel__hybrid_group_cpu_map_idx()
1910 (!evsel__is_hybrid(evsel) && evsel__is_hybrid(leader))) { in evsel__hybrid_group_cpu_map_idx()
1911 return evsel__match_other_cpu(evsel, leader, cpu_map_idx); in evsel__hybrid_group_cpu_map_idx()
1919 struct evsel *leader = evsel__leader(evsel); in get_group_fd() local
1926 * Leader must be already processed/open, in get_group_fd()
1929 BUG_ON(!leader->core.fd); in get_group_fd()
1935 fd = FD(leader, cpu_map_idx, thread); in get_group_fd()
1936 BUG_ON(fd == -1 && !leader->skippable); in get_group_fd()
1939 * When the leader has been skipped, return -2 to distinguish from no in get_group_fd()
1940 * group leader case. in get_group_fd()
2313 struct evsel *leader; in evsel__detect_missing_aux_action_feature() local
2325 * The leader is an AUX area event. If it has failed, assume the feature in evsel__detect_missing_aux_action_feature()
2328 leader = evsel__leader(evsel); in evsel__detect_missing_aux_action_feature()
2329 if (evsel == leader) { in evsel__detect_missing_aux_action_feature()
2338 if (leader->core.attr.aux_action) in evsel__detect_missing_aux_action_feature()
2341 if (!evsel__probe_aux_action(leader, cpu)) in evsel__detect_missing_aux_action_feature()
2623 pr_debug("broken group leader for %s\n", evsel->name); in evsel__open_cpu()
2909 struct evsel *leader = evsel__leader(evsel); in evsel__has_branch_counters() local
2912 if (!leader || !evsel->evlist) in evsel__has_branch_counters()
2918 if (leader->br_cntr_nr > 0) in evsel__has_branch_counters()
3867 return container_of(evsel->core.leader, struct evsel, core); in evsel__leader()
3870 bool evsel__has_leader(struct evsel *evsel, struct evsel *leader) in evsel__has_leader() argument
3872 return evsel->core.leader == &leader->core; in evsel__has_leader()
3880 void evsel__set_leader(struct evsel *evsel, struct evsel *leader) in evsel__set_leader() argument
3882 evsel->core.leader = &leader->core; in evsel__set_leader()
3903 * Remove an event from a given group (leader).
3907 void evsel__remove_from_group(struct evsel *evsel, struct evsel *leader) in evsel__remove_from_group() argument
3909 if (!arch_evsel__must_be_in_group(evsel) && evsel != leader) { in evsel__remove_from_group()
3912 leader->core.nr_members--; in evsel__remove_from_group()