[PATCH 3/4] perf/POWER7: Make event translations available in sysfs
Sukadev Bhattiprolu
sukadev at linux.vnet.ibm.com
Sat Nov 17 06:35:37 EST 2012
Jiri Olsa [jolsa at redhat.com] wrote:
| >
| > 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
For now, power events can simply be u64 - so am hoping to have something
like this and replace the raw codes:
#define PM_CYC 0x1e
#define PM_GCT_NOSLOT_CYC 0x100f8
EVENT_ATTR_STR() is interesting, but would require new/extra macros like
#define PM_CYC_STR "0x1e"
#define PM_GCT_NOSLOT_CYC_STR "0x100f8"
I went down the path we discussed earlier - to have x86 and Power share
the EVENT_ATTR() macros. This is making the x86 code less concise
EVENT_ATTR(cpu-cycles, CPU_CYCLES)
becomes
EVENT_ATTR(cpu-cycles, PERF_COUNT_HW_CPU_CYCLES, events_sysfs_show)
with each EVENT_ATTR() explcitly adding events_sysfs_show or needing another
wrapper around the wrappers.
Still tweaking it, but would it be flexible to make 'struct pmu_events_attr'
common and let architectures define the EVENT_ATTR() as needed ? Would
duplicate some code but hopefully not a lot.
Sukadev
More information about the Linuxppc-dev
mailing list