Lines Matching refs:attr

276 	    struct perf_event_attr *attr,  in __add_event()  argument
281 event_attr_init(attr); in __add_event()
283 evsel = perf_evsel__new_idx(attr, (*idx)++); in __add_event()
295 struct perf_event_attr *attr, char *name) in add_event() argument
297 return __add_event(list, idx, attr, name, NULL) ? 0 : -ENOMEM; in add_event()
321 struct perf_event_attr attr; in parse_events_add_cache() local
373 memset(&attr, 0, sizeof(attr)); in parse_events_add_cache()
374 attr.config = cache_type | (cache_op << 8) | (cache_result << 16); in parse_events_add_cache()
375 attr.type = PERF_TYPE_HW_CACHE; in parse_events_add_cache()
376 return add_event(list, idx, &attr, name); in parse_events_add_cache()
475 parse_breakpoint_type(const char *type, struct perf_event_attr *attr) in parse_breakpoint_type() argument
485 if (attr->bp_type & bit) \ in parse_breakpoint_type()
488 attr->bp_type |= bit; \ in parse_breakpoint_type()
508 if (!attr->bp_type) /* Default */ in parse_breakpoint_type()
509 attr->bp_type = HW_BREAKPOINT_R | HW_BREAKPOINT_W; in parse_breakpoint_type()
517 struct perf_event_attr attr; in parse_events_add_breakpoint() local
519 memset(&attr, 0, sizeof(attr)); in parse_events_add_breakpoint()
520 attr.bp_addr = (unsigned long) ptr; in parse_events_add_breakpoint()
522 if (parse_breakpoint_type(type, &attr)) in parse_events_add_breakpoint()
527 if (attr.bp_type == HW_BREAKPOINT_X) in parse_events_add_breakpoint()
533 attr.bp_len = len; in parse_events_add_breakpoint()
535 attr.type = PERF_TYPE_BREAKPOINT; in parse_events_add_breakpoint()
536 attr.sample_period = 1; in parse_events_add_breakpoint()
538 return add_event(list, idx, &attr, NULL); in parse_events_add_breakpoint()
541 static int config_term(struct perf_event_attr *attr, in config_term() argument
553 attr->config = term->val.num; in config_term()
557 attr->config1 = term->val.num; in config_term()
561 attr->config2 = term->val.num; in config_term()
565 attr->sample_period = term->val.num; in config_term()
584 static int config_attr(struct perf_event_attr *attr, in config_attr() argument
590 if (config_term(attr, term) && fail) in config_attr()
600 struct perf_event_attr attr; in parse_events_add_numeric() local
602 memset(&attr, 0, sizeof(attr)); in parse_events_add_numeric()
603 attr.type = type; in parse_events_add_numeric()
604 attr.config = config; in parse_events_add_numeric()
607 config_attr(&attr, head_config, 1)) in parse_events_add_numeric()
610 return add_event(list, idx, &attr, NULL); in parse_events_add_numeric()
632 struct perf_event_attr attr; in parse_events_add_pmu() local
642 memcpy(&attr, pmu->default_config, in parse_events_add_pmu()
645 memset(&attr, 0, sizeof(attr)); in parse_events_add_pmu()
649 attr.type = pmu->type; in parse_events_add_pmu()
650 evsel = __add_event(list, idx, &attr, NULL, pmu->cpus); in parse_events_add_pmu()
661 config_attr(&attr, head_config, 0); in parse_events_add_pmu()
663 if (perf_pmu__config(pmu, &attr, head_config)) in parse_events_add_pmu()
666 evsel = __add_event(list, idx, &attr, pmu_event_name(head_config), in parse_events_add_pmu()
722 int eu = evsel ? evsel->attr.exclude_user : 0; in get_event_modifier()
723 int ek = evsel ? evsel->attr.exclude_kernel : 0; in get_event_modifier()
724 int eh = evsel ? evsel->attr.exclude_hv : 0; in get_event_modifier()
725 int eH = evsel ? evsel->attr.exclude_host : 0; in get_event_modifier()
726 int eG = evsel ? evsel->attr.exclude_guest : 0; in get_event_modifier()
727 int eI = evsel ? evsel->attr.exclude_idle : 0; in get_event_modifier()
728 int precise = evsel ? evsel->attr.precise_ip : 0; in get_event_modifier()
730 int pinned = evsel ? evsel->attr.pinned : 0; in get_event_modifier()
841 evsel->attr.exclude_user = mod.eu; in parse_events__modifier_event()
842 evsel->attr.exclude_kernel = mod.ek; in parse_events__modifier_event()
843 evsel->attr.exclude_hv = mod.eh; in parse_events__modifier_event()
844 evsel->attr.precise_ip = mod.precise; in parse_events__modifier_event()
845 evsel->attr.exclude_host = mod.eH; in parse_events__modifier_event()
846 evsel->attr.exclude_guest = mod.eG; in parse_events__modifier_event()
847 evsel->attr.exclude_idle = mod.eI; in parse_events__modifier_event()
852 evsel->attr.pinned = mod.pinned; in parse_events__modifier_event()
1069 if (last == NULL || last->attr.type != PERF_TYPE_TRACEPOINT) { in parse_filter()
1238 struct perf_event_attr attr = { in is_event_supported() local
1251 evsel = perf_evsel__new(&attr); in is_event_supported()
1264 evsel->attr.exclude_kernel = 1; in is_event_supported()