Lines Matching refs:core
250 return event_type(evsel->core.attr.type); in evsel__pmu_name()
253 #define FD(e, x, y) (*(int *)xyarray__entry(e->core.fd, x, y))
333 evsel->id_pos = __perf_evsel__calc_id_pos(evsel->core.attr.sample_type); in evsel__calc_id_pos()
334 evsel->is_pos = __perf_evsel__calc_is_pos(evsel->core.attr.sample_type); in evsel__calc_id_pos()
340 if (!(evsel->core.attr.sample_type & bit)) { in __evsel__set_sample_bit()
341 evsel->core.attr.sample_type |= bit; in __evsel__set_sample_bit()
350 if (evsel->core.attr.sample_type & bit) { in __evsel__reset_sample_bit()
351 evsel->core.attr.sample_type &= ~bit; in __evsel__reset_sample_bit()
366 evsel->core.attr.read_format |= PERF_FORMAT_ID; in evsel__set_sample_id()
390 perf_evsel__init(&evsel->core, attr, idx); in evsel__init()
423 evsel->core.attr.sample_type = (PERF_SAMPLE_RAW | PERF_SAMPLE_TIME | in evsel__new_idx()
425 evsel->core.attr.sample_period = 1; in evsel__new_idx()
475 BUG_ON(orig->core.fd); in evsel__clone()
487 evsel = evsel__new(&orig->core.attr); in evsel__clone()
492 evsel->core.cpus = perf_cpu_map__get(orig->core.cpus); in evsel__clone()
493 evsel->core.pmu_cpus = perf_cpu_map__get(orig->core.pmu_cpus); in evsel__clone()
494 evsel->core.threads = perf_thread_map__get(orig->core.threads); in evsel__clone()
495 evsel->core.nr_members = orig->core.nr_members; in evsel__clone()
496 evsel->core.system_wide = orig->core.system_wide; in evsel__clone()
497 evsel->core.requires_cpu = orig->core.requires_cpu; in evsel__clone()
498 evsel->core.is_pmu_core = orig->core.is_pmu_core; in evsel__clone()
540 evsel->core.leader = orig->core.leader; in evsel__clone()
639 if (evsel->core.attr.type != PERF_TYPE_TRACEPOINT) in evsel__tp_format()
643 tp_format = trace_event__tp_format_id(evsel->core.attr.config); in evsel__tp_format()
705 struct perf_event_attr *attr = &evsel->core.attr; in evsel__add_modifiers()
737 return scnprintf(bf, size, "%s", __evsel__hw_name(evsel->core.attr.config)); in arch_evsel__hw_name()
768 int r = scnprintf(bf, size, "%s", __evsel__sw_name(evsel->core.attr.config)); in evsel__sw_name()
792 struct perf_event_attr *attr = &evsel->core.attr; in evsel__bp_name()
888 int ret = __evsel__hw_cache_name(evsel->core.attr.config, bf, size); in evsel__hw_cache_name()
894 int ret = scnprintf(bf, size, "raw 0x%" PRIx64, evsel->core.attr.config); in evsel__raw_name()
908 switch (evsel->core.attr.type) { in evsel__name()
939 evsel->core.attr.type); in evsel__name()
1012 struct perf_event_attr *attr = &evsel->core.attr; in __evsel__config_callchain()
1079 struct perf_event_attr *attr = &evsel->core.attr; in evsel__reset_callgraph()
1099 struct perf_event_attr *attr = &evsel->core.attr; in evsel__apply_config_terms()
1223 evsel->core.attr.mmap_data = track; in evsel__apply_config_terms()
1266 evsel->core.attr.sample_type & PERF_SAMPLE_RAW; in evsel__is_offcpu_event()
1301 struct perf_event_attr *attr = &evsel->core.attr; in evsel__config()
1326 if (leader->core.nr_members > 1) { in evsel__config()
1335 evsel->core.attr.read_format |= in evsel__config()
1361 evsel->core.attr.read_format |= in evsel__config()
1379 evsel->core.attr.exclude_callchain_user = 1; in evsel__config()
1468 evsel->core.attr.read_format |= in evsel__config()
1514 if (evsel->core.pmu_cpus || evsel->unit) in evsel__config()
1515 evsel->core.attr.read_format |= PERF_FORMAT_ID; in evsel__config()
1545 evsel->core.attr.sample_type &= OFFCPU_SAMPLE_TYPES; in evsel__config()
1594 return perf_evsel__enable_cpu(&evsel->core, cpu_map_idx); in evsel__enable_cpu()
1599 int err = perf_evsel__enable(&evsel->core); in evsel__enable()
1609 return perf_evsel__disable_cpu(&evsel->core, cpu_map_idx); in evsel__disable_cpu()
1614 int err = perf_evsel__disable(&evsel->core); in evsel__disable()
1655 assert(list_empty(&evsel->core.node)); in evsel__exit()
1662 perf_evsel__free_fd(&evsel->core); in evsel__exit()
1663 perf_evsel__free_id(&evsel->core); in evsel__exit()
1666 perf_evsel__exit(&evsel->core); in evsel__exit()
1718 return perf_evsel__read(&evsel->core, cpu_map_idx, thread, count); in evsel__read_one()
1755 u64 nr = leader->core.nr_members; in evsel__group_read_nr_members()
1767 u64 read_format = leader->core.attr.read_format; in evsel__group_read_size()
1773 return perf_evsel__read_size(&leader->core); in evsel__group_read_size()
1798 u64 read_format = leader->core.attr.read_format; in evsel__process_group_data()
1833 u64 read_format = leader->core.attr.read_format; in evsel__read_group()
1863 u32 e_type = evsel->core.attr.type; in __evsel__match()
1864 u64 e_config = evsel->core.attr.config; in __evsel__match()
1892 if (evsel->core.attr.read_format & PERF_FORMAT_GROUP) in evsel__read_counter()
1923 cpu = perf_cpu_map__cpu(evsel->core.cpus, cpu_map_idx); in evsel__match_other_cpu()
1924 return perf_cpu_map__idx(other->core.cpus, cpu); in evsel__match_other_cpu()
1951 BUG_ON(!leader->core.fd); in get_group_fd()
2009 if (evsel->core.system_wide) in evsel__ignore_missing_thread()
2061 if (!evsel->core.attr.precise_ip) { in evsel__precise_ip_fallback()
2062 evsel->core.attr.precise_ip = evsel->precise_ip_original; in evsel__precise_ip_fallback()
2067 evsel->precise_ip_original = evsel->core.attr.precise_ip; in evsel__precise_ip_fallback()
2069 evsel->core.attr.precise_ip--; in evsel__precise_ip_fallback()
2070 pr_debug2_peo("decreasing precise_ip by one (%d)\n", evsel->core.attr.precise_ip); in evsel__precise_ip_fallback()
2071 display_attr(&evsel->core.attr); in evsel__precise_ip_fallback()
2084 if ((perf_missing_features.write_backward && evsel->core.attr.write_backward) || in __evsel__prepare_open()
2085 (perf_missing_features.aux_output && evsel->core.attr.aux_output)) in __evsel__prepare_open()
2108 if (evsel->core.fd == NULL && in __evsel__prepare_open()
2109 perf_evsel__alloc_fd(&evsel->core, perf_cpu_map__nr(cpus), nthreads) < 0) in __evsel__prepare_open()
2124 if (perf_missing_features.inherit_sample_read && evsel->core.attr.inherit && in evsel__disable_missing_features()
2125 (evsel->core.attr.sample_type & PERF_SAMPLE_READ)) in evsel__disable_missing_features()
2126 evsel->core.attr.inherit = 0; in evsel__disable_missing_features()
2128 evsel->core.attr.branch_sample_type &= ~PERF_SAMPLE_BRANCH_COUNTERS; in evsel__disable_missing_features()
2130 evsel->core.attr.read_format &= ~PERF_FORMAT_LOST; in evsel__disable_missing_features()
2136 evsel->core.attr.clockid = CLOCK_MONOTONIC; /* should always work */ in evsel__disable_missing_features()
2138 evsel->core.attr.use_clockid = 0; in evsel__disable_missing_features()
2139 evsel->core.attr.clockid = 0; in evsel__disable_missing_features()
2144 evsel->core.attr.mmap2 = 0; in evsel__disable_missing_features()
2146 evsel->core.attr.exclude_guest = evsel->core.attr.exclude_host = 0; in evsel__disable_missing_features()
2148 evsel->core.attr.branch_sample_type &= ~(PERF_SAMPLE_BRANCH_NO_FLAGS | in evsel__disable_missing_features()
2150 if (perf_missing_features.group_read && evsel->core.attr.inherit) in evsel__disable_missing_features()
2151 evsel->core.attr.read_format &= ~(PERF_FORMAT_GROUP|PERF_FORMAT_ID); in evsel__disable_missing_features()
2153 evsel->core.attr.ksymbol = 0; in evsel__disable_missing_features()
2155 evsel->core.attr.bpf_event = 0; in evsel__disable_missing_features()
2157 evsel->core.attr.branch_sample_type &= ~PERF_SAMPLE_BRANCH_HW_INDEX; in evsel__disable_missing_features()
2159 evsel->core.attr.sample_id_all = 0; in evsel__disable_missing_features()
2224 .type = evsel->core.attr.type, in evsel__detect_missing_pmu_features()
2225 .config = evsel->core.attr.config, in evsel__detect_missing_pmu_features()
2264 .type = evsel->core.attr.type, in evsel__detect_missing_brstack_features()
2265 .config = evsel->core.attr.config, in evsel__detect_missing_brstack_features()
2311 struct perf_event_attr attr = evsel->core.attr; in evsel__probe_aux_action()
2341 if (!evsel->core.attr.aux_action || detection_done) in evsel__detect_missing_aux_action_feature()
2360 if (leader->core.attr.aux_action) in evsel__detect_missing_aux_action_feature()
2509 if (evsel->core.attr.inherit && in evsel__detect_missing_features()
2510 (evsel->core.attr.sample_type & PERF_SAMPLE_READ) && in evsel__detect_missing_features()
2514 if ((evsel->core.attr.branch_sample_type & PERF_SAMPLE_BRANCH_COUNTERS) && in evsel__detect_missing_features()
2518 if ((evsel->core.attr.read_format & PERF_FORMAT_LOST) && in evsel__detect_missing_features()
2522 if ((evsel->core.attr.sample_type & PERF_SAMPLE_WEIGHT_STRUCT) && in evsel__detect_missing_features()
2526 if (evsel->core.attr.use_clockid && evsel->core.attr.clockid != CLOCK_MONOTONIC && in evsel__detect_missing_features()
2532 if (evsel->core.attr.use_clockid && perf_missing_features.clockid) in evsel__detect_missing_features()
2539 if (evsel->core.attr.mmap2 && perf_missing_features.mmap2) in evsel__detect_missing_features()
2542 if ((evsel->core.attr.branch_sample_type & (PERF_SAMPLE_BRANCH_NO_FLAGS | in evsel__detect_missing_features()
2547 if (evsel->core.attr.inherit && (evsel->core.attr.read_format & PERF_FORMAT_GROUP) && in evsel__detect_missing_features()
2551 if (evsel->core.attr.ksymbol && perf_missing_features.ksymbol) in evsel__detect_missing_features()
2554 if (evsel->core.attr.bpf_event && perf_missing_features.bpf) in evsel__detect_missing_features()
2557 if ((evsel->core.attr.branch_sample_type & PERF_SAMPLE_BRANCH_HW_INDEX) && in evsel__detect_missing_features()
2561 if (evsel->core.attr.sample_id_all && perf_missing_features.sample_id_all) in evsel__detect_missing_features()
2598 display_attr(&evsel->core.attr); in evsel__open_cpu()
2625 if (!evsel->cgrp && !evsel->core.system_wide) in evsel__open_cpu()
2640 fd = sys_perf_event_open(&evsel->core.attr, pid, cpu.cpu, in evsel__open_cpu()
2656 test_attr__open(&evsel->core.attr, pid, cpu, in evsel__open_cpu()
2744 perf_evsel__close(&evsel->core); in evsel__close()
2745 perf_evsel__free_id(&evsel->core); in evsel__close()
2780 u64 type = evsel->core.attr.sample_type; in perf_evsel__parse_id_sample()
2983 u64 type = evsel->core.attr.sample_type; in evsel__parse_sample()
2999 data->period = evsel->core.attr.sample_period; in evsel__parse_sample()
3006 if (!evsel->core.attr.sample_id_all) in evsel__parse_sample()
3079 u64 read_format = evsel->core.attr.read_format; in evsel__parse_sample()
3230 u64 mask = evsel->core.attr.sample_regs_user; in evsel__parse_sample()
3287 u64 mask = evsel->core.attr.sample_regs_intr; in evsel__parse_sample()
3343 u64 type = evsel->core.attr.sample_type; in evsel__parse_sample_timestamp()
3354 if (!evsel->core.attr.sample_id_all) in evsel__parse_sample_timestamp()
3385 u64 sample_type = evsel->core.attr.sample_type; in evsel__id_hdr_size()
3538 evsel->core.attr.type == PERF_TYPE_HARDWARE && in evsel__fallback()
3539 evsel->core.attr.config == PERF_COUNT_HW_CPU_CYCLES) { in evsel__fallback()
3547 evsel->core.attr.type = PERF_TYPE_SOFTWARE; in evsel__fallback()
3548 evsel->core.attr.config = target__has_cpu(target) in evsel__fallback()
3557 } else if (err == EACCES && !evsel->core.attr.exclude_kernel && in evsel__fallback()
3564 if (evsel->core.attr.exclude_user) in evsel__fallback()
3580 evsel->core.attr.exclude_kernel = 1; in evsel__fallback()
3581 evsel->core.attr.exclude_hv = 1; in evsel__fallback()
3584 } else if (err == EOPNOTSUPP && !evsel->core.attr.exclude_guest && in evsel__fallback()
3602 evsel->core.attr.exclude_guest = 1; in evsel__fallback()
3788 if (evsel->core.attr.sample_type & PERF_SAMPLE_BRANCH_STACK) in evsel__open_strerror()
3792 if (evsel->core.attr.aux_output) in evsel__open_strerror()
3796 if (evsel->core.attr.aux_action) in evsel__open_strerror()
3800 if (evsel->core.attr.sample_period != 0) in evsel__open_strerror()
3804 if (evsel->core.attr.precise_ip) in evsel__open_strerror()
3808 if (evsel->core.attr.type == PERF_TYPE_HARDWARE) in evsel__open_strerror()
3829 …if (evsel->core.attr.sample_type & PERF_SAMPLE_CODE_PAGE_SIZE && perf_missing_features.code_page_s… in evsel__open_strerror()
3831 …if (evsel->core.attr.sample_type & PERF_SAMPLE_DATA_PAGE_SIZE && perf_missing_features.data_page_s… in evsel__open_strerror()
3833 if (evsel->core.attr.write_backward && perf_missing_features.write_backward) in evsel__open_strerror()
3885 for (cpu_map_idx = 0; cpu_map_idx < xyarray__max_x(evsel->core.fd); cpu_map_idx++) { in store_evsel_ids()
3886 for (thread = 0; thread < xyarray__max_y(evsel->core.fd); in store_evsel_ids()
3890 if (perf_evlist__id_add_fd(&evlist->core, &evsel->core, in store_evsel_ids()
3901 struct perf_cpu_map *cpus = evsel->core.cpus; in evsel__store_ids()
3902 struct perf_thread_map *threads = evsel->core.threads; in evsel__store_ids()
3904 if (perf_evsel__alloc_id(&evsel->core, perf_cpu_map__nr(cpus), threads->nr)) in evsel__store_ids()
3930 if (!evsel->core.is_pmu_core) in evsel__is_hybrid()
3938 return container_of(evsel->core.leader, struct evsel, core); in evsel__leader()
3943 return evsel->core.leader == &leader->core; in evsel__has_leader()
3953 evsel->core.leader = &leader->core; in evsel__set_leader()
3982 evsel->core.nr_members = 0; in evsel__remove_from_group()
3983 leader->core.nr_members--; in evsel__remove_from_group()
4007 if (counter->core.attr.type < PERF_TYPE_MAX && counter->core.attr.type != PERF_TYPE_RAW) { in evsel__set_needs_uniquify()