Re: [PATCH 10/14] perf test: Add thread loop test shell scripts

James Clark
2022-07-05T14:05:51Z

On 01/07/2022 13:07, carsten.haitzler@foss.arm.com wrote:
> From: "Carsten Haitzler (Rasterman)" <raster@rasterman.com>
>
> Add a script to drive the thread loop test that gathers data so
> it passes a minimum bar (in this case do we get any perf context data
> for every thread).
>
> Signed-off-by: Carsten Haitzler <carsten.haitzler@arm.com>

Hi Carsten,

I checked this on N1SDP and I get failures in both threads tests. This is
because it's looking for "CID=..." when in my output threads are shown as
"VMID=...":

Idx:628048; ID:10; I_ADDR_CTXT_L_64IS0 : Address & Context, Long, 64 bit, IS0.; Addr=0x0000AAAAE3BF0B18; Ctxt: AArch64,EL0, NS; VMID=0xa588c;

I think with a change to the grep it should work.

Thanks
James

> ---
> .../coresight/thread_loop_check_tid_10.sh | 19 +++++++++++++++++++
> .../coresight/thread_loop_check_tid_2.sh | 19 +++++++++++++++++++
> 2 files changed, 38 insertions(+)
> create mode 100755 tools/perf/tests/shell/coresight/thread_loop_check_tid_10.sh
> create mode 100755 tools/perf/tests/shell/coresight/thread_loop_check_tid_2.sh
>
> diff --git a/tools/perf/tests/shell/coresight/thread_loop_check_tid_10.sh b/tools/perf/tests/shell/coresight/thread_loop_check_tid_10.sh
> new file mode 100755
> index 000000000000..7c13636fc778
> --- /dev/null
> +++ b/tools/perf/tests/shell/coresight/thread_loop_check_tid_10.sh
> @@ -0,0 +1,19 @@
> +#!/bin/sh -e
> +# CoreSight / Thread Loop 10 Threads - Check TID
> +
> +# SPDX-License-Identifier: GPL-2.0
> +# Carsten Haitzler <carsten.haitzler@arm.com>, 2021
> +
> +TEST="thread_loop"
> +. $(dirname $0)/../lib/coresight.sh
> +ARGS="10 1"
> +DATV="check-tid-10th"
> +DATA="$DATD/perf-$TEST-$DATV.data"
> +STDO="$DATD/perf-$TEST-$DATV.stdout"
> +
> +SHOW_TID=1 perf record -s $PERFRECOPT -o "$DATA" "$BIN" $ARGS > $STDO
> +
> +perf_dump_aux_tid_verify "$DATA" "$STDO"
> +
> +err=$?
> +exit $err
> diff --git a/tools/perf/tests/shell/coresight/thread_loop_check_tid_2.sh b/tools/perf/tests/shell/coresight/thread_loop_check_tid_2.sh
> new file mode 100755
> index 000000000000..a067145af43c
> --- /dev/null
> +++ b/tools/perf/tests/shell/coresight/thread_loop_check_tid_2.sh
> @@ -0,0 +1,19 @@
> +#!/bin/sh -e
> +# CoreSight / Thread Loop 2 Threads - Check TID
> +
> +# SPDX-License-Identifier: GPL-2.0
> +# Carsten Haitzler <carsten.haitzler@arm.com>, 2021
> +
> +TEST="thread_loop"
> +. $(dirname $0)/../lib/coresight.sh
> +ARGS="2 20"
> +DATV="check-tid-2th"
> +DATA="$DATD/perf-$TEST-$DATV.data"
> +STDO="$DATD/perf-$TEST-$DATV.stdout"
> +
> +SHOW_TID=1 perf record -s $PERFRECOPT -o "$DATA" "$BIN" $ARGS > $STDO
> +
> +perf_dump_aux_tid_verify "$DATA" "$STDO"
> +
> +err=$?
> +exit $err