Re: [PATCH 2/3] perf report: Add raw report support for s390 auxiliary trace

From: mpe
Date: Tue Aug 07 2018 - 23:37:39 EST


Thomas Richter <tmricht@xxxxxxxxxxxxx> writes:
> Add support for s390 auxiliary trace support.
> Use 'perf record -e rbd000' to create the perf.data file.
> The event also has the symbolic name SF_CYCLES_BASIC_DIAG,
> using 'perf record -e SF_CYCLES_BASIC_DIAG' is equivalent.
...
>
> Signed-off-by: Thomas Richter <tmricht@xxxxxxxxxxxxx>
> Reviewed-by: Hendrik Brueckner <brueckner@xxxxxxxxxxxxx>
> ---
> tools/perf/util/s390-cpumsf-kernel.h | 71 ++++++++
> tools/perf/util/s390-cpumsf.c | 244 ++++++++++++++++++++++++++-
> 2 files changed, 314 insertions(+), 1 deletion(-)
> create mode 100644 tools/perf/util/s390-cpumsf-kernel.h


I'm seeing a build break on ppc64le which seems to be caused by this
commit (I haven't bisected):

util/s390-cpumsf.c: In function âtrailer_timestampâ:
util/s390-cpumsf.c:222:2: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
return *((unsigned long long *) &te->timestamp[te->t]);
^


And on powerpc big endian:
In file included from util/cpumap.h:10:0,
from util/s390-cpumsf.c:150:
util/s390-cpumsf.c: In function âs390_cpumsf_basic_showâ:
util/s390-cpumsf.c:187:10: error: format â%lxâ expects argument of type âlong unsigned intâ, but argument 4 has type âsize_t {aka unsigned int}â [-Werror=format=]
pr_err("Invalid AUX trace basic entry [%#08lx]\n", pos);
^

cheers