powerpc/perf: Implement get_cpu_str()
PATCH v3 1/1 powerpc/perf: Implement get_cpu_str()
powerpc/perf: Implement get_cpu_str()
With a file ~/.cache/pmu-events/004d0100-core.json describing Power8 PMU events we would need to run:
perf stat \ --events-file ~/.cache/pmu-events/004d0100-core.json \ -e PM_CYC sleep 1
With this get_cpu_str(), On Powerpc, we can skip the --events-file option and run:
perf stat -e PM_CYC sleep 1
Signed-off-by Sukadev Bhattiprolu <[email protected]>
---
Changelog[v3]:
[Tobias Klauser]: Fix some changelog damage to patch.
Changelog[v2]:
[Michael Ellerman]: Use PVR instead of AUXV variables
tools/perf/arch/powerpc/util/header.c | 12 ++++++++++++ 1 file changed, 12 insertions(+)
tools/perf/arch/powerpc/util/header.c +12 -0
@@ -6,6 +6,7 @@#include "../../util/header.h" #include "../../util/util.h" +#include "../../util/jevents.h" #define mfspr (rn) ({unsigned long rval; \ asm volatile("mfspr %0," __stringify(rn) \
@@ -32,3 +33,14 @@ get_cpuid(char *buffer, size_t sz) }return -1 ; } + +char * +get_cpu_str (void ) +{ +char *bufp; + +if (asprintf (&bufp,"%.8lx-core" ,mfspr (SPRN_PVR )) <0 ) + bufp =NULL ; + +return bufp; +}
Signature · 1 line
1.8.3.1
Quoted 9 lines · Sukadev Bhattiprolu
powerpc/perf: Implement
get_cpu_str()With a file
~/.cache/pmu-events/004d0100-core.jsondescribing Power8 PMU events we would need to run:perf stat \ --events-file ~/.cache/pmu-events/004d0100-core.json \ -e PM_CYC sleep 1
Quoted 6 lines
With this
get_cpu_str(), On Powerpc, we can skip the --events-file option and run:perf stat -e
PM_CYCsleep 1Signed-off-by Sukadev Bhattiprolu <[email protected]>
Acked-by Michael Ellerman <[email protected]>
cheers