[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Yz7qx+4BxNYOCgvL@leoy-yangtze.lan>
Date: Thu, 6 Oct 2022 22:48:39 +0800
From: Leo Yan <leo.yan@...aro.org>
To: James Clark <james.clark@....com>
Cc: coresight@...ts.linaro.org, acme@...nel.org,
suzuki.poulose@....com, linux-perf-users@...r.kernel.org,
mathieu.poirier@...aro.org, mike.leach@...aro.org,
Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>,
Mark Rutland <mark.rutland@....com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
Jiri Olsa <jolsa@...nel.org>,
Namhyung Kim <namhyung@...nel.org>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] perf test: Fix test_arm_coresight.sh failures on Juno
Hi James,
On Wed, Oct 05, 2022 at 03:05:08PM +0100, James Clark wrote:
> This test commonly fails on Arm Juno because the instruction interval
> is large enough to miss generating any samples for Perf in system-wide
> mode.
>
> Fix this by lowering the interval until a comfortable number of Perf
> instructions are generated. The test is still quick to run because only
> a small amount of trace is gathered.
>
> Before:
>
> sudo ./perf test coresight -vvv
> ...
> Recording trace with system wide mode
> Looking at perf.data file for dumping branch samples:
> Looking at perf.data file for reporting branch samples:
> Looking at perf.data file for instruction samples:
> CoreSight system wide testing: FAIL
> ...
>
> After:
>
> sudo ./perf test coresight -vvv
> ...
> Recording trace with system wide mode
> Looking at perf.data file for dumping branch samples:
> Looking at perf.data file for reporting branch samples:
> Looking at perf.data file for instruction samples:
> CoreSight system wide testing: PASS
> ...
Since Arm Juno board has zero timestamp for CoreSight, I don't think
now arm_cs_etm.sh can really work on it.
If we want to pass the test on Juno board, we need to add option
"--itrace=Zi1000i" for "perf report" and "perf script"; but seems
to me "--itrace=Z..." is not a general case for testing ...
> Signed-off-by: James Clark <james.clark@....com>
> ---
> tools/perf/tests/shell/test_arm_coresight.sh | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/perf/tests/shell/test_arm_coresight.sh b/tools/perf/tests/shell/test_arm_coresight.sh
> index e4cb4f1806ff..daad786cf48d 100755
> --- a/tools/perf/tests/shell/test_arm_coresight.sh
> +++ b/tools/perf/tests/shell/test_arm_coresight.sh
> @@ -70,7 +70,7 @@ perf_report_instruction_samples() {
> # 68.12% touch libc-2.27.so [.] _dl_addr
> # 5.80% touch libc-2.27.so [.] getenv
> # 4.35% touch ld-2.27.so [.] _dl_fixup
> - perf report --itrace=i1000i --stdio -i ${perfdata} 2>&1 | \
> + perf report --itrace=i20i --stdio -i ${perfdata} 2>&1 | \
> egrep " +[0-9]+\.[0-9]+% +$1" > /dev/null 2>&1
So here I am suspect that changing to "--itrace=i20i" can allow the test
to pass on Juno board. Could you confirm for this?
Thanks,
Leo
Powered by blists - more mailing lists