[PATCH 3/4] perf/POWER7: Make event translations available in sysfs
Jiri Olsa
jolsa at redhat.com
Fri Nov 16 23:51:54 EST 2012
On Wed, Nov 14, 2012 at 10:20:45AM -0800, Sukadev Bhattiprolu wrote:
> Jiri Olsa [jolsa at redhat.com] wrote:
> | On Wed, Nov 07, 2012 at 11:19:28AM -0800, Sukadev Bhattiprolu wrote:
> |
> | SNIP
> |
> | > +struct perf_pmu_events_attr {
> | > + struct device_attribute attr;
> | > + u64 id;
> | > +};
> | > +
> | > +extern ssize_t power_events_sysfs_show(struct device *dev,
> | > + struct device_attribute *attr, char *page);
> | > +
> | > +#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, power_events_sysfs_show, NULL),\
> | > + .id = PM_##_id, \
> | > + };
> |
> | this is duplicating the x86 code, perhaps it could be moved
> | to include/linux/perf_event.h and shared globaly
>
> Ok.
>
> Can we remove the assumption that the event id is a generic event that
> has PERF_COUNT_HW_ prefix and also let the architectures pass in a "show"
> function ? This would allow architectures to display any arch specific
> events that don't yet have a generic counterpart.
>
> IOW, can we do something like this (untested) and make PERF_EVENT_ATTR global:
hm, then you probably can use following:
http://www.spinics.net/lists/kernel/msg1434233.html
http://www.spinics.net/lists/kernel/msg1434235.html
http://www.spinics.net/lists/kernel/msg1434226.html
jirka
More information about the Linuxppc-dev
mailing list