Lines Matching refs:evsel
113 struct evsel *evsel; in evlist__new_default() local
115 evlist__for_each_entry(evlist, evsel) in evlist__new_default()
116 evsel__set_sample_id(evsel, /*can_sample_identifier=*/false); in evlist__new_default()
143 struct evsel *first = evlist__first(evlist); in evlist__set_id_pos()
151 struct evsel *evsel; in evlist__update_id_pos() local
153 evlist__for_each_entry(evlist, evsel) in evlist__update_id_pos()
154 evsel__calc_id_pos(evsel); in evlist__update_id_pos()
161 struct evsel *pos, *n; in evlist__purge()
194 void evlist__add(struct evlist *evlist, struct evsel *entry) in evlist__add()
204 void evlist__remove(struct evlist *evlist, struct evsel *evsel) in evlist__remove() argument
206 evsel->evlist = NULL; in evlist__remove()
207 perf_evlist__remove(&evlist->core, &evsel->core); in evlist__remove()
213 struct evsel *evsel, *temp, *leader = NULL; in evlist__splice_list_tail() local
215 __evlist__for_each_entry_safe(list, temp, evsel) { in evlist__splice_list_tail()
216 list_del_init(&evsel->core.node); in evlist__splice_list_tail()
217 evlist__add(evlist, evsel); in evlist__splice_list_tail()
218 leader = evsel; in evlist__splice_list_tail()
222 __evlist__for_each_entry_safe(list, temp, evsel) { in evlist__splice_list_tail()
223 if (evsel__has_leader(evsel, leader)) { in evlist__splice_list_tail()
224 list_del_init(&evsel->core.node); in evlist__splice_list_tail()
225 evlist__add(evlist, evsel); in evlist__splice_list_tail()
239 struct evsel *evsel = evlist__find_tracepoint_by_name(evlist, assocs[i].name); in __evlist__set_tracepoints_handlers() local
240 if (evsel == NULL) in __evlist__set_tracepoints_handlers()
244 if (evsel->handler != NULL) in __evlist__set_tracepoints_handlers()
246 evsel->handler = assocs[i].handler; in __evlist__set_tracepoints_handlers()
259 static struct evsel *evlist__dummy_event(struct evlist *evlist) in evlist__dummy_event()
275 struct evsel *evsel = evlist__dummy_event(evlist); in evlist__add_dummy() local
277 if (evsel == NULL) in evlist__add_dummy()
280 evlist__add(evlist, evsel); in evlist__add_dummy()
284 struct evsel *evlist__add_aux_dummy(struct evlist *evlist, bool system_wide) in evlist__add_aux_dummy()
286 struct evsel *evsel = evlist__dummy_event(evlist); in evlist__add_aux_dummy() local
288 if (!evsel) in evlist__add_aux_dummy()
291 evsel->core.attr.exclude_kernel = 1; in evlist__add_aux_dummy()
292 evsel->core.attr.exclude_guest = 1; in evlist__add_aux_dummy()
293 evsel->core.attr.exclude_hv = 1; in evlist__add_aux_dummy()
294 evsel->core.system_wide = system_wide; in evlist__add_aux_dummy()
295 evsel->no_aux_samples = true; in evlist__add_aux_dummy()
296 evsel->name = strdup("dummy:u"); in evlist__add_aux_dummy()
298 evlist__add(evlist, evsel); in evlist__add_aux_dummy()
299 return evsel; in evlist__add_aux_dummy()
303 struct evsel *evlist__add_sched_switch(struct evlist *evlist, bool system_wide) in evlist__add_sched_switch()
305 struct evsel *evsel = evsel__newtp_idx("sched", "sched_switch", 0, in evlist__add_sched_switch() local
308 if (IS_ERR(evsel)) in evlist__add_sched_switch()
309 return evsel; in evlist__add_sched_switch()
311 evsel__set_sample_bit(evsel, CPU); in evlist__add_sched_switch()
312 evsel__set_sample_bit(evsel, TIME); in evlist__add_sched_switch()
314 evsel->core.system_wide = system_wide; in evlist__add_sched_switch()
315 evsel->no_aux_samples = true; in evlist__add_sched_switch()
317 evlist__add(evlist, evsel); in evlist__add_sched_switch()
318 return evsel; in evlist__add_sched_switch()
324 struct evsel *evsel, *n; in evlist__add_attrs() local
329 evsel = evsel__new_idx(attrs + i, evlist->core.nr_entries + i); in evlist__add_attrs()
330 if (evsel == NULL) in evlist__add_attrs()
332 list_add_tail(&evsel->core.node, &head); in evlist__add_attrs()
340 __evlist__for_each_entry_safe(&head, n, evsel) in evlist__add_attrs()
341 evsel__delete(evsel); in evlist__add_attrs()
365 struct evsel *evlist__find_tracepoint_by_id(struct evlist *evlist, int id) in evlist__find_tracepoint_by_id()
367 struct evsel *evsel; in evlist__find_tracepoint_by_id() local
369 evlist__for_each_entry(evlist, evsel) { in evlist__find_tracepoint_by_id()
370 if (evsel->core.attr.type == PERF_TYPE_TRACEPOINT && in evlist__find_tracepoint_by_id()
371 (int)evsel->core.attr.config == id) in evlist__find_tracepoint_by_id()
372 return evsel; in evlist__find_tracepoint_by_id()
378 struct evsel *evlist__find_tracepoint_by_name(struct evlist *evlist, const char *name) in evlist__find_tracepoint_by_name()
380 struct evsel *evsel; in evlist__find_tracepoint_by_name() local
382 evlist__for_each_entry(evlist, evsel) { in evlist__find_tracepoint_by_name()
383 if ((evsel->core.attr.type == PERF_TYPE_TRACEPOINT) && in evlist__find_tracepoint_by_name()
384 (strcmp(evsel->name, name) == 0)) in evlist__find_tracepoint_by_name()
385 return evsel; in evlist__find_tracepoint_by_name()
394 struct evsel *evsel = evsel__newtp(sys, name); in evlist__add_newtp() local
396 if (IS_ERR(evsel)) in evlist__add_newtp()
399 evsel->handler = handler; in evlist__add_newtp()
400 evlist__add(evlist, evsel); in evlist__add_newtp()
409 .evsel = NULL, in evlist__cpu_begin()
421 itr.evsel = evlist__first(evlist); in evlist__cpu_begin()
425 itr.cpu_map_idx = perf_cpu_map__idx(itr.evsel->core.cpus, itr.cpu); in evlist__cpu_begin()
439 while (evlist_cpu_itr->evsel != evlist__last(evlist_cpu_itr->container)) { in evlist_cpu_iterator__next()
440 evlist_cpu_itr->evsel = evsel__next(evlist_cpu_itr->evsel); in evlist_cpu_iterator__next()
442 perf_cpu_map__idx(evlist_cpu_itr->evsel->core.cpus, in evlist_cpu_iterator__next()
449 evlist_cpu_itr->evsel = evlist__first(evlist_cpu_itr->container); in evlist_cpu_iterator__next()
456 perf_cpu_map__idx(evlist_cpu_itr->evsel->core.cpus, in evlist_cpu_iterator__next()
472 static int evsel__strcmp(struct evsel *pos, char *evsel_name) in evsel__strcmp()
483 struct evsel *pos; in evlist__is_enabled()
497 struct evsel *pos; in __evlist__disable()
512 pos = evlist_cpu_itr.evsel; in __evlist__disable()
567 struct evsel *pos; in __evlist__enable()
579 pos = evlist_cpu_itr.evsel; in __evlist__enable()
667 struct evsel *evlist__id2evsel(struct evlist *evlist, u64 id) in evlist__id2evsel()
676 return container_of(sid->evsel, struct evsel, core); in evlist__id2evsel()
684 struct evsel *evlist__id2evsel_strict(struct evlist *evlist, u64 id) in evlist__id2evsel_strict()
693 return container_of(sid->evsel, struct evsel, core); in evlist__id2evsel_strict()
718 struct evsel *evlist__event2evsel(struct evlist *evlist, union perf_event *event) in evlist__event2evsel()
720 struct evsel *first = evlist__first(evlist); in evlist__event2evsel()
745 return container_of(sid->evsel, struct evsel, core); in evlist__event2evsel()
843 struct evsel *evsel = container_of(_evsel, struct evsel, core); in perf_evlist__mmap_cb_idx() local
845 auxtrace_mmap_params__set_idx(&mp->auxtrace_mp, evlist, evsel, idx); in perf_evlist__mmap_cb_idx()
1093 int evlist__apply_filters(struct evlist *evlist, struct evsel **err_evsel, in evlist__apply_filters()
1096 struct evsel *evsel; in evlist__apply_filters() local
1099 evlist__for_each_entry(evlist, evsel) { in evlist__apply_filters()
1104 if (evsel->filter) { in evlist__apply_filters()
1105 err = perf_evsel__apply_filter(&evsel->core, evsel->filter); in evlist__apply_filters()
1107 *err_evsel = evsel; in evlist__apply_filters()
1115 if (!list_empty(&evsel->bpf_filters)) { in evlist__apply_filters()
1116 err = perf_bpf_filter__prepare(evsel, target); in evlist__apply_filters()
1118 *err_evsel = evsel; in evlist__apply_filters()
1129 struct evsel *evsel; in evlist__set_tp_filter() local
1135 evlist__for_each_entry(evlist, evsel) { in evlist__set_tp_filter()
1136 if (evsel->core.attr.type != PERF_TYPE_TRACEPOINT) in evlist__set_tp_filter()
1139 err = evsel__set_filter(evsel, filter); in evlist__set_tp_filter()
1149 struct evsel *evsel; in evlist__append_tp_filter() local
1155 evlist__for_each_entry(evlist, evsel) { in evlist__append_tp_filter()
1156 if (evsel->core.attr.type != PERF_TYPE_TRACEPOINT) in evlist__append_tp_filter()
1159 err = evsel__append_tp_filter(evsel, filter); in evlist__append_tp_filter()
1223 struct evsel *pos; in evlist__valid_sample_type()
1242 struct evsel *evsel; in __evlist__combined_sample_type() local
1247 evlist__for_each_entry(evlist, evsel) in __evlist__combined_sample_type()
1248 evlist->combined_sample_type |= evsel->core.attr.sample_type; in __evlist__combined_sample_type()
1261 struct evsel *evsel; in evlist__combined_branch_type() local
1264 evlist__for_each_entry(evlist, evsel) in evlist__combined_branch_type()
1265 branch_type |= evsel->core.attr.branch_sample_type; in evlist__combined_branch_type()
1269 static struct evsel *
1270 evlist__find_dup_event_from_prev(struct evlist *evlist, struct evsel *event) in evlist__find_dup_event_from_prev()
1272 struct evsel *pos; in evlist__find_dup_event_from_prev()
1317 struct evsel *evsel, *dup; in evlist__update_br_cntr() local
1320 evlist__for_each_entry(evlist, evsel) { in evlist__update_br_cntr()
1321 if (evsel->core.attr.branch_sample_type & PERF_SAMPLE_BRANCH_COUNTERS) { in evlist__update_br_cntr()
1322 evsel->br_cntr_idx = i++; in evlist__update_br_cntr()
1323 evsel__leader(evsel)->br_cntr_nr++; in evlist__update_br_cntr()
1325 dup = evlist__find_dup_event_from_prev(evlist, evsel); in evlist__update_br_cntr()
1327 memcpy(evsel->abbr_name, dup->abbr_name, 3 * sizeof(char)); in evlist__update_br_cntr()
1329 evlist__new_abbr_name(evsel->abbr_name); in evlist__update_br_cntr()
1337 struct evsel *first = evlist__first(evlist), *pos = first; in evlist__valid_read_format()
1359 struct evsel *first = evlist__first(evlist); in evlist__id_hdr_size()
1366 struct evsel *first = evlist__first(evlist), *pos = first; in evlist__valid_sample_id_all()
1378 struct evsel *first = evlist__first(evlist); in evlist__sample_id_all()
1382 void evlist__set_selected(struct evlist *evlist, struct evsel *evsel) in evlist__set_selected() argument
1384 evlist->selected = evsel; in evlist__set_selected()
1389 struct evsel *evsel; in evlist__close() local
1399 evlist__for_each_entry_reverse(evlist, evsel) in evlist__close()
1400 evsel__close(evsel); in evlist__close()
1408 perf_evsel__close_cpu(&evlist_cpu_itr.evsel->core, in evlist__close()
1413 evlist__for_each_entry_reverse(evlist, evsel) { in evlist__close()
1414 perf_evsel__free_fd(&evsel->core); in evlist__close()
1415 perf_evsel__free_id(&evsel->core); in evlist__close()
1453 struct evsel *evsel; in evlist__open() local
1468 evlist__for_each_entry(evlist, evsel) { in evlist__open()
1469 err = evsel__open(evsel, evsel->core.cpus, evsel->core.threads); in evlist__open()
1622 struct evsel *evsel = evlist__event2evsel(evlist, event); in evlist__parse_sample() local
1625 if (!evsel) in evlist__parse_sample()
1627 ret = evsel__parse_sample(evsel, event, sample); in evlist__parse_sample()
1643 struct evsel *evsel = evlist__event2evsel(evlist, event); in evlist__parse_sample_timestamp() local
1645 if (!evsel) in evlist__parse_sample_timestamp()
1647 return evsel__parse_sample_timestamp(evsel, event, timestamp); in evlist__parse_sample_timestamp()
1678 struct evsel *first = evlist__first(evlist); in evlist__strerror_open()
1734 void evlist__to_front(struct evlist *evlist, struct evsel *move_evsel) in evlist__to_front()
1736 struct evsel *evsel, *n; in evlist__to_front() local
1742 evlist__for_each_entry_safe(evlist, n, evsel) { in evlist__to_front()
1743 if (evsel__leader(evsel) == evsel__leader(move_evsel)) in evlist__to_front()
1744 list_move_tail(&evsel->core.node, &move); in evlist__to_front()
1750 struct evsel *evlist__get_tracking_event(struct evlist *evlist) in evlist__get_tracking_event()
1752 struct evsel *evsel; in evlist__get_tracking_event() local
1754 evlist__for_each_entry(evlist, evsel) { in evlist__get_tracking_event()
1755 if (evsel->tracking) in evlist__get_tracking_event()
1756 return evsel; in evlist__get_tracking_event()
1762 void evlist__set_tracking_event(struct evlist *evlist, struct evsel *tracking_evsel) in evlist__set_tracking_event()
1764 struct evsel *evsel; in evlist__set_tracking_event() local
1769 evlist__for_each_entry(evlist, evsel) { in evlist__set_tracking_event()
1770 if (evsel != tracking_evsel) in evlist__set_tracking_event()
1771 evsel->tracking = false; in evlist__set_tracking_event()
1777 struct evsel *evlist__findnew_tracking_event(struct evlist *evlist, bool system_wide) in evlist__findnew_tracking_event()
1779 struct evsel *evsel; in evlist__findnew_tracking_event() local
1781 evsel = evlist__get_tracking_event(evlist); in evlist__findnew_tracking_event()
1782 if (!evsel__is_dummy_event(evsel)) { in evlist__findnew_tracking_event()
1783 evsel = evlist__add_aux_dummy(evlist, system_wide); in evlist__findnew_tracking_event()
1784 if (!evsel) in evlist__findnew_tracking_event()
1787 evlist__set_tracking_event(evlist, evsel); in evlist__findnew_tracking_event()
1789 perf_evlist__go_system_wide(&evlist->core, &evsel->core); in evlist__findnew_tracking_event()
1792 return evsel; in evlist__findnew_tracking_event()
1795 struct evsel *evlist__find_evsel_by_str(struct evlist *evlist, const char *str) in evlist__find_evsel_by_str()
1797 struct evsel *evsel; in evlist__find_evsel_by_str() local
1799 evlist__for_each_entry(evlist, evsel) { in evlist__find_evsel_by_str()
1800 if (!evsel->name) in evlist__find_evsel_by_str()
1802 if (evsel__name_is(evsel, str)) in evlist__find_evsel_by_str()
1803 return evsel; in evlist__find_evsel_by_str()
1868 struct evsel *evsel; in evlist__exclude_kernel() local
1870 evlist__for_each_entry(evlist, evsel) { in evlist__exclude_kernel()
1871 if (!evsel->core.attr.exclude_kernel) in evlist__exclude_kernel()
1886 struct evsel *leader = evlist__first(evlist); in evlist__force_leader()
1893 struct evsel *evlist__reset_weak_group(struct evlist *evsel_list, struct evsel *evsel, bool close) in evlist__reset_weak_group() argument
1895 struct evsel *c2, *leader; in evlist__reset_weak_group()
1898 leader = evsel__leader(evsel); in evlist__reset_weak_group()
1908 if (c2 == evsel) in evlist__reset_weak_group()
2158 struct evsel *evsel; in evlist__ctlfd_enable() local
2172 evsel = evlist__find_evsel_by_str(evlist, name); in evlist__ctlfd_enable()
2173 if (evsel) { in evlist__ctlfd_enable()
2178 pr_info("Event %s %s\n", evsel->name, in evlist__ctlfd_enable()
2199 struct evsel *evsel; in evlist__ctlfd_list() local
2224 evlist__for_each_entry(evlist, evsel) in evlist__ctlfd_list()
2225 evsel__fprintf(evsel, &details, stderr); in evlist__ctlfd_list()
2507 struct evsel *evlist__find_evsel(struct evlist *evlist, int idx) in evlist__find_evsel()
2509 struct evsel *evsel; in evlist__find_evsel() local
2511 evlist__for_each_entry(evlist, evsel) { in evlist__find_evsel()
2512 if (evsel->core.idx == idx) in evlist__find_evsel()
2513 return evsel; in evlist__find_evsel()
2520 struct evsel *evsel; in evlist__scnprintf_evsels() local
2523 evlist__for_each_entry(evlist, evsel) { in evlist__scnprintf_evsels()
2524 if (evsel__is_dummy_event(evsel)) in evlist__scnprintf_evsels()
2526 if (size > (strlen(evsel__name(evsel)) + (printed ? 2 : 1))) { in evlist__scnprintf_evsels()
2527 …printed += scnprintf(bf + printed, size - printed, "%s%s", printed ? "," : "", evsel__name(evsel)); in evlist__scnprintf_evsels()
2539 struct evsel *leader, *evsel, *pos; in evlist__check_mem_load_aux() local
2548 evlist__for_each_entry(evlist, evsel) { in evlist__check_mem_load_aux()
2549 leader = evsel__leader(evsel); in evlist__check_mem_load_aux()
2550 if (leader == evsel) in evlist__check_mem_load_aux()
2574 struct evsel *pos; in evlist__warn_user_requested_cpus()
2604 struct evsel *pos; in evlist__uniquify_name()
2633 struct evsel *evsel; in evlist__has_bpf_output() local
2635 evlist__for_each_entry(evlist, evsel) { in evlist__has_bpf_output()
2636 if (evsel__is_bpf_output(evsel)) in evlist__has_bpf_output()