Re: [PATCH v7 00/14] perf: test: Add trace data quality tests for CoreSight

Leo Yan
2022-08-13T14:17:50Z

On Fri, Aug 12, 2022 at 04:02:50PM -0300, Arnaldo Carvalho de Melo wrote:
> Em Fri, Aug 12, 2022 at 01:16:27PM +0100, carsten.haitzler@foss.arm.com escreveu:
> > From: Carsten Haitzler <carsten.haitzler@arm.com>
> >
> > This is a prelude to adding more tests to shell tests and in order to
> > support putting those tests into subdirectories, I need to change the
> > test code that scans/finds and runs them.
> >
> > To support subdirs I have to recurse so it's time to refactor the code to
> > allow this and centralize the shell script finding into one location and
> > only one single scan that builds a list of all the found tests in memory
> > instead of it being duplicated in 3 places.
> >
> > This code also optimizes things like knowing the max width of desciption
> > strings (as we can do that while we scan instead of a whole new pass
> > of opening files). It also more cleanly filters scripts to see only
> > *.sh files thus skipping random other files in directories like *~
> > backup files, other random junk/data files that may appear and the
> > scripts must be executable to make the cut (this ensures the script
> > lib dir is not seen as scripts to run). This avoids perf test running
> > previous older versions of test scripts that are editor backup files
> > as well as skipping perf.data files that may appear and so on.
> >
> > Signed-off-by: Carsten Haitzler <carsten.haitzler@arm.com>
>
> Leo, can you please check if your previous Reviewed-by tags stand for
> this new version?

Yeah, after applied this patch series on the repo:
https://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git, branch perf/core;
it has merging conflict for the patch 03 "perf test: Add build infra for perf
test tools for CoreSight tests". It's good to rebase this patch set on the
latest perf/core branch.

I compared patch set v5 and v7, confirmed the my comments have been addressed
in v7. Carsten also has updated patches' author address, it is same with the
address used in SoB, this is the right thing to do (Sorry I missed that).

I tested this patch set on my Juno board and observed a regression related with
CTI driver, the regression is not relevant with this patch set, I have
reported it on CoreSight mailing list. This will be investigated separatly.

When played these test cases, I observed a failure for below case; but when I
re-run the case again and it passed.

# ./perf test -v 78
78: CoreSight / Thread Loop 10 Threads - Check TID :
--- start ---
test child forked, pid 6233
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.380 MB ./perf-thread_loop-check-tid-10th.data ]
Thread IDs 6242 6242 6242 6242 6242 6242 6242 6242 not found in perf AUX data
test child finished with -1
---- end ----
CoreSight / Thread Loop 10 Threads - Check TID: FAILED!

You could see the perf data file is abnormally small (0.380 MiB), it should be
an issue for perf cs-etm record. I don't think this is an issue for the test
case itself, we need to look at this issue later.

So with fixing the merging conflict:

Tested-by: Leo Yan <leo.yan@linaro.org>
Reviewed-by: Leo Yan <leo.yan@linaro.org>

These test cases are for trace data quality, I'd like wait a bit for Mike's
green light since he has much better understanding.

Thanks,
Leo