Lines Matching defs:evsel

3 #include <perf/evsel.h>
9 #include <internal/evsel.h>
39 struct perf_evsel *evsel)
42 * We already have cpus for evsel (via PMU sysfs) so
45 if (!evsel->own_cpus || evlist->has_user_cpus) {
46 perf_cpu_map__put(evsel->cpus);
47 evsel->cpus = perf_cpu_map__get(evlist->cpus);
48 } else if (!evsel->system_wide && perf_cpu_map__empty(evlist->cpus)) {
49 perf_cpu_map__put(evsel->cpus);
50 evsel->cpus = perf_cpu_map__get(evlist->cpus);
51 } else if (evsel->cpus != evsel->own_cpus) {
52 perf_cpu_map__put(evsel->cpus);
53 evsel->cpus = perf_cpu_map__get(evsel->own_cpus);
56 perf_thread_map__put(evsel->threads);
57 evsel->threads = perf_thread_map__get(evlist->threads);
58 evlist->all_cpus = perf_cpu_map__merge(evlist->all_cpus, evsel->cpus);
63 struct perf_evsel *evsel;
65 perf_evlist__for_each_evsel(evlist, evsel)
66 __perf_evlist__propagate_maps(evlist, evsel);
70 struct perf_evsel *evsel)
72 list_add_tail(&evsel->node, &evlist->entries);
74 __perf_evlist__propagate_maps(evlist, evsel);
78 struct perf_evsel *evsel)
80 list_del_init(&evsel->node);
178 struct perf_evsel *evsel;
181 perf_evlist__for_each_entry(evlist, evsel) {
182 err = perf_evsel__open(evsel, evsel->cpus, evsel->threads);
196 struct perf_evsel *evsel;
198 perf_evlist__for_each_entry_reverse(evlist, evsel)
199 perf_evsel__close(evsel);
204 struct perf_evsel *evsel;
206 perf_evlist__for_each_entry(evlist, evsel)
207 perf_evsel__enable(evsel);
212 struct perf_evsel *evsel;
214 perf_evlist__for_each_entry(evlist, evsel)
215 perf_evsel__disable(evsel);
228 struct perf_evsel *evsel,
232 struct perf_sample_id *sid = SID(evsel, cpu, thread);
235 sid->evsel = evsel;
241 struct perf_evsel *evsel,
244 perf_evlist__id_hash(evlist, evsel, cpu, thread, id);
245 evsel->id[evsel->ids++] = id;
249 struct perf_evsel *evsel,
273 if (!(evsel->attr.read_format & PERF_FORMAT_ID) ||
277 if (evsel->attr.read_format & PERF_FORMAT_TOTAL_TIME_ENABLED)
279 if (evsel->attr.read_format & PERF_FORMAT_TOTAL_TIME_RUNNING)
285 perf_evlist__id_add(evlist, evsel, cpu, thread, id);
294 struct perf_evsel *evsel;
296 perf_evlist__for_each_entry(evlist, evsel) {
297 if (evsel->system_wide)
370 static void perf_evsel__set_sid_idx(struct perf_evsel *evsel, int idx, int cpu, int thread)
372 struct perf_sample_id *sid = SID(evsel, cpu, thread);
375 sid->cpu = perf_cpu_map__cpu(evsel->cpus, cpu);
376 sid->tid = perf_thread_map__pid(evsel->threads, thread);
424 struct perf_evsel *evsel;
427 perf_evlist__for_each_entry(evlist, evsel) {
428 bool overwrite = evsel->attr.write_backward;
432 if (evsel->system_wide && thread)
435 cpu = perf_cpu_map__idx(evsel->cpus, evlist_cpu);
451 fd = FD(evsel, cpu, thread);
485 if (!evsel->system_wide &&
491 if (evsel->attr.read_format & PERF_FORMAT_ID) {
492 if (perf_evlist__id_add_fd(evlist, evsel, cpu, thread,
495 perf_evsel__set_sid_idx(evsel, idx, cpu, thread);
572 struct perf_evsel *evsel;
582 perf_evlist__for_each_entry(evlist, evsel) {
583 if ((evsel->attr.read_format & PERF_FORMAT_ID) &&
584 evsel->sample_id == NULL &&
585 perf_evsel__alloc_id(evsel, evsel->fd->max_x, evsel->fd->max_y) < 0)