57 #define IBS_OP_TYPE_FILE "/sys/bus/event_source/devices/ibs_op/type" 59 #define PERF_IBS_CONFIG (1ULL<<19) 82 fscanf(ibs_file,
"%d", &type);
87 einfo->
attr.type = type;
92 u64 sample_type = PERF_SAMPLE_RAW
93 | PERF_SAMPLE_PERIOD | PERF_SAMPLE_TIME
94 | PERF_SAMPLE_IP | PERF_SAMPLE_ADDR
95 | PERF_SAMPLE_CPU | PERF_SAMPLE_TID;
108 EMSG(
"Cannot initialize event %x, type: %d", einfo->
attr.config, einfo->
attr.type);
125 einfo->
attr.config, 1, metric, einfo );
static struct perf_mem_metric metric
int perf_skid_set_max_precise_ip(struct perf_event_attr *attr)
struct perf_event_attr attr
struct event_custom_s * metric_custom
metric_desc_t * hpcrun_set_metric_info_and_period(int metric_id, const char *name, MetricFlags_ValFmt_t valFmt, size_t period, metric_desc_properties_t prop)
long perf_event_open(struct perf_event_attr *hw_event, pid_t pid, int cpu, int group_fd, unsigned long flags)
enum threshold_e threshold_type
void * hpcrun_malloc(size_t size)
int perf_util_attr_init(const char *event_name, struct perf_event_attr *attr, bool usePeriod, u64 threshold, u64 sampletype)
void datacentric_hw_handler(perf_mmap_data_t *mmap_data, cct_node_t *datacentric_node, cct_node_t *sample_node)
int datacentric_hw_register(sample_source_t *self, event_custom_t *event, struct event_threshold_s *period)
#define METHOD_CALL(obj, meth,...)
int hpcrun_new_metric(void)
#define metric_property_none