Re: [PATCH v8 00/22] perf arm-spe: Refactor decoding & dumping flow

From: Arnaldo Carvalho de Melo
Date: Wed Nov 11 2020 - 11:15:40 EST


Em Wed, Nov 11, 2020 at 01:10:51PM -0300, Arnaldo Carvalho de Melo escreveu:
> Em Wed, Nov 11, 2020 at 03:11:27PM +0800, Leo Yan escreveu:
> > This is patch set v8 for refactoring Arm SPE trace decoding and dumping.
> >
> > This version addresses Andre's comment to pass parameter '&buf_len' at
> > the last call arm_spe_pkt_snprintf() in the function arm_spe_pkt_desc().
> >
> > This patch set is cleanly applied on the top of perf/core branch
> > with commit 644bf4b0f7ac ("perf jevents: Add test for arch std events").
> >
> > I retested this patch set on Hisilicon D06 platform with commands
> > "perf report -D" and "perf script", compared the decoding results
> > between with this patch set and without this patch set, "diff" tool
> > shows the result as expected.
>
> With the patches I applied I'm getting:
>
> util/arm-spe-decoder/arm-spe-pkt-decoder.c: In function 'arm_spe_pkt_desc':
> util/arm-spe-decoder/arm-spe-pkt-decoder.c:410:3: error: left shift count >= width of type [-Werror]
> case 1: ns = !!(packet->payload & NS_FLAG);
> ^
> util/arm-spe-decoder/arm-spe-pkt-decoder.c:411:4: error: left shift count >= width of type [-Werror]
> el = (packet->payload & EL_FLAG) >> 61;
> ^
> util/arm-spe-decoder/arm-spe-pkt-decoder.c:411:4: error: left shift count >= width of type [-Werror]
> util/arm-spe-decoder/arm-spe-pkt-decoder.c:416:3: error: left shift count >= width of type [-Werror]
> case 3: ns = !!(packet->payload & NS_FLAG);
> ^
> CC /tmp/build/perf/util/arm-spe-decoder/arm-spe-decoder.o
>
>
> On:
>
> 16 11.70 android-ndk:r12b-arm : FAIL arm-linux-androideabi-gcc (GCC) 4.9.x 20150123 (prerelease)
> 17 11.32 android-ndk:r15c-arm : FAIL arm-linux-androideabi-gcc (GCC) 4.9.x 20150123 (prerelease)
>
> That were building ok before, builds still under way, perhaps its just
> on these old systems...

[acme@five perf]$ git bisect good
cc6fa07fb1458cca3741919774eb050976471000 is the first bad commit
commit cc6fa07fb1458cca3741919774eb050976471000
Author: Leo Yan <leo.yan@xxxxxxxxxx>
Date: Wed Nov 11 15:11:28 2020 +0800

perf arm-spe: Include bitops.h for BIT() macro

Include header linux/bitops.h, directly use its BIT() macro and remove
the self defined macros.

Signed-off-by: Leo Yan <leo.yan@xxxxxxxxxx>
Reviewed-by: Andre Przywara <andre.przywara@xxxxxxx>
Link: https://lore.kernel.org/r/20201111071149.815-2-leo.yan@xxxxxxxxxx
Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

tools/perf/util/arm-spe-decoder/arm-spe-decoder.c | 5 +----
tools/perf/util/arm-spe-decoder/arm-spe-pkt-decoder.c | 3 +--
2 files changed, 2 insertions(+), 6 deletions(-)
[acme@five perf]$