|
@@ -1310,11 +1310,6 @@ static struct attribute_group x86_pmu_format_group = {
|
|
|
.attrs = NULL,
|
|
|
};
|
|
|
|
|
|
-struct perf_pmu_events_attr {
|
|
|
- struct device_attribute attr;
|
|
|
- u64 id;
|
|
|
-};
|
|
|
-
|
|
|
/*
|
|
|
* Remove all undefined events (x86_pmu.event_map(id) == 0)
|
|
|
* out of events_attr attributes.
|
|
@@ -1348,11 +1343,9 @@ static ssize_t events_sysfs_show(struct device *dev, struct device_attribute *at
|
|
|
#define EVENT_VAR(_id) event_attr_##_id
|
|
|
#define EVENT_PTR(_id) &event_attr_##_id.attr.attr
|
|
|
|
|
|
-#define EVENT_ATTR(_name, _id) \
|
|
|
-static struct perf_pmu_events_attr EVENT_VAR(_id) = { \
|
|
|
- .attr = __ATTR(_name, 0444, events_sysfs_show, NULL), \
|
|
|
- .id = PERF_COUNT_HW_##_id, \
|
|
|
-};
|
|
|
+#define EVENT_ATTR(_name, _id) \
|
|
|
+ PMU_EVENT_ATTR(_name, EVENT_VAR(_id), PERF_COUNT_HW_##_id, \
|
|
|
+ events_sysfs_show)
|
|
|
|
|
|
EVENT_ATTR(cpu-cycles, CPU_CYCLES );
|
|
|
EVENT_ATTR(instructions, INSTRUCTIONS );
|