.../trace/coresight/coresight-perf.rst | 158 +++++++++++++ MAINTAINERS | 1 + tools/perf/.gitignore | 6 +- .../perf/Documentation/perf-arm-coresight.txt | 5 + tools/perf/Makefile.config | 2 + tools/perf/Makefile.perf | 17 +- tools/perf/tests/Build | 1 + tools/perf/tests/builtin-test-list.c | 207 ++++++++++++++++++ tools/perf/tests/builtin-test-list.h | 12 + tools/perf/tests/builtin-test.c | 152 ++----------- tools/perf/tests/shell/coresight/Makefile | 30 +++ .../tests/shell/coresight/Makefile.miniconfig | 14 ++ .../tests/shell/coresight/asm_pure_loop.sh | 18 ++ .../shell/coresight/asm_pure_loop/.gitignore | 1 + .../shell/coresight/asm_pure_loop/Makefile | 34 +++ .../coresight/asm_pure_loop/asm_pure_loop.S | 28 +++ .../shell/coresight/memcpy_thread/.gitignore | 1 + .../shell/coresight/memcpy_thread/Makefile | 33 +++ .../coresight/memcpy_thread/memcpy_thread.c | 79 +++++++ .../shell/coresight/memcpy_thread_16k_10.sh | 18 ++ .../shell/coresight/thread_loop/.gitignore | 1 + .../shell/coresight/thread_loop/Makefile | 33 +++ .../shell/coresight/thread_loop/thread_loop.c | 86 ++++++++ .../coresight/thread_loop_check_tid_10.sh | 19 ++ .../coresight/thread_loop_check_tid_2.sh | 19 ++ .../coresight/unroll_loop_thread/.gitignore | 1 + .../coresight/unroll_loop_thread/Makefile | 33 +++ .../unroll_loop_thread/unroll_loop_thread.c | 74 +++++++ .../shell/coresight/unroll_loop_thread_10.sh | 18 ++ tools/perf/tests/shell/lib/coresight.sh | 132 +++++++++++ 30 files changed, 1094 insertions(+), 139 deletions(-) create mode 100644 Documentation/trace/coresight/coresight-perf.rst create mode 100644 tools/perf/Documentation/perf-arm-coresight.txt create mode 100644 tools/perf/tests/builtin-test-list.c create mode 100644 tools/perf/tests/builtin-test-list.h create mode 100644 tools/perf/tests/shell/coresight/Makefile create mode 100644 tools/perf/tests/shell/coresight/Makefile.miniconfig create mode 100755 tools/perf/tests/shell/coresight/asm_pure_loop.sh create mode 100644 tools/perf/tests/shell/coresight/asm_pure_loop/.gitignore create mode 100644 tools/perf/tests/shell/coresight/asm_pure_loop/Makefile create mode 100644 tools/perf/tests/shell/coresight/asm_pure_loop/asm_pure_loop.S create mode 100644 tools/perf/tests/shell/coresight/memcpy_thread/.gitignore create mode 100644 tools/perf/tests/shell/coresight/memcpy_thread/Makefile create mode 100644 tools/perf/tests/shell/coresight/memcpy_thread/memcpy_thread.c create mode 100755 tools/perf/tests/shell/coresight/memcpy_thread_16k_10.sh create mode 100644 tools/perf/tests/shell/coresight/thread_loop/.gitignore create mode 100644 tools/perf/tests/shell/coresight/thread_loop/Makefile create mode 100644 tools/perf/tests/shell/coresight/thread_loop/thread_loop.c 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 create mode 100644 tools/perf/tests/shell/coresight/unroll_loop_thread/.gitignore create mode 100644 tools/perf/tests/shell/coresight/unroll_loop_thread/Makefile create mode 100644 tools/perf/tests/shell/coresight/unroll_loop_thread/unroll_loop_thread.c create mode 100755 tools/perf/tests/shell/coresight/unroll_loop_thread_10.sh create mode 100644 tools/perf/tests/shell/lib/coresight.sh
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>
Carsten Haitzler (14):
perf test: Refactor shell tests allowing subdirs
perf test: Add CoreSight shell lib shared code for future tests
perf test: Add build infra for perf test tools for CoreSight tests
perf test: Add asm pureloop test tool
perf test: Add asm pureloop test shell script
perf test: Add git ignore for perf data generated by the CoreSight
tests
perf test: Add memcpy thread test tool
perf test: Add memcpy thread test shell script
perf test: Add thread loop test tool
perf test: Add thread loop test shell scripts
perf test: Add unroll thread test tool
perf test: Add unroll thread test shell script
perf test: Add git ignore for tmp and output files of CoreSight tests
perf test: Add relevant documentation about CoreSight testing
.../trace/coresight/coresight-perf.rst | 158 +++++++++++++
MAINTAINERS | 1 +
tools/perf/.gitignore | 6 +-
.../perf/Documentation/perf-arm-coresight.txt | 5 +
tools/perf/Makefile.config | 2 +
tools/perf/Makefile.perf | 17 +-
tools/perf/tests/Build | 1 +
tools/perf/tests/builtin-test-list.c | 207 ++++++++++++++++++
tools/perf/tests/builtin-test-list.h | 12 +
tools/perf/tests/builtin-test.c | 152 ++-----------
tools/perf/tests/shell/coresight/Makefile | 30 +++
.../tests/shell/coresight/Makefile.miniconfig | 14 ++
.../tests/shell/coresight/asm_pure_loop.sh | 18 ++
.../shell/coresight/asm_pure_loop/.gitignore | 1 +
.../shell/coresight/asm_pure_loop/Makefile | 34 +++
.../coresight/asm_pure_loop/asm_pure_loop.S | 28 +++
.../shell/coresight/memcpy_thread/.gitignore | 1 +
.../shell/coresight/memcpy_thread/Makefile | 33 +++
.../coresight/memcpy_thread/memcpy_thread.c | 79 +++++++
.../shell/coresight/memcpy_thread_16k_10.sh | 18 ++
.../shell/coresight/thread_loop/.gitignore | 1 +
.../shell/coresight/thread_loop/Makefile | 33 +++
.../shell/coresight/thread_loop/thread_loop.c | 86 ++++++++
.../coresight/thread_loop_check_tid_10.sh | 19 ++
.../coresight/thread_loop_check_tid_2.sh | 19 ++
.../coresight/unroll_loop_thread/.gitignore | 1 +
.../coresight/unroll_loop_thread/Makefile | 33 +++
.../unroll_loop_thread/unroll_loop_thread.c | 74 +++++++
.../shell/coresight/unroll_loop_thread_10.sh | 18 ++
tools/perf/tests/shell/lib/coresight.sh | 132 +++++++++++
30 files changed, 1094 insertions(+), 139 deletions(-)
create mode 100644 Documentation/trace/coresight/coresight-perf.rst
create mode 100644 tools/perf/Documentation/perf-arm-coresight.txt
create mode 100644 tools/perf/tests/builtin-test-list.c
create mode 100644 tools/perf/tests/builtin-test-list.h
create mode 100644 tools/perf/tests/shell/coresight/Makefile
create mode 100644 tools/perf/tests/shell/coresight/Makefile.miniconfig
create mode 100755 tools/perf/tests/shell/coresight/asm_pure_loop.sh
create mode 100644 tools/perf/tests/shell/coresight/asm_pure_loop/.gitignore
create mode 100644 tools/perf/tests/shell/coresight/asm_pure_loop/Makefile
create mode 100644 tools/perf/tests/shell/coresight/asm_pure_loop/asm_pure_loop.S
create mode 100644 tools/perf/tests/shell/coresight/memcpy_thread/.gitignore
create mode 100644 tools/perf/tests/shell/coresight/memcpy_thread/Makefile
create mode 100644 tools/perf/tests/shell/coresight/memcpy_thread/memcpy_thread.c
create mode 100755 tools/perf/tests/shell/coresight/memcpy_thread_16k_10.sh
create mode 100644 tools/perf/tests/shell/coresight/thread_loop/.gitignore
create mode 100644 tools/perf/tests/shell/coresight/thread_loop/Makefile
create mode 100644 tools/perf/tests/shell/coresight/thread_loop/thread_loop.c
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
create mode 100644 tools/perf/tests/shell/coresight/unroll_loop_thread/.gitignore
create mode 100644 tools/perf/tests/shell/coresight/unroll_loop_thread/Makefile
create mode 100644 tools/perf/tests/shell/coresight/unroll_loop_thread/unroll_loop_thread.c
create mode 100755 tools/perf/tests/shell/coresight/unroll_loop_thread_10.sh
create mode 100644 tools/perf/tests/shell/lib/coresight.sh
--
2.32.0
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? Thanks, - Arnaldo > > Carsten Haitzler (14): > perf test: Refactor shell tests allowing subdirs > perf test: Add CoreSight shell lib shared code for future tests > perf test: Add build infra for perf test tools for CoreSight tests > perf test: Add asm pureloop test tool > perf test: Add asm pureloop test shell script > perf test: Add git ignore for perf data generated by the CoreSight > tests > perf test: Add memcpy thread test tool > perf test: Add memcpy thread test shell script > perf test: Add thread loop test tool > perf test: Add thread loop test shell scripts > perf test: Add unroll thread test tool > perf test: Add unroll thread test shell script > perf test: Add git ignore for tmp and output files of CoreSight tests > perf test: Add relevant documentation about CoreSight testing > > .../trace/coresight/coresight-perf.rst | 158 +++++++++++++ > MAINTAINERS | 1 + > tools/perf/.gitignore | 6 +- > .../perf/Documentation/perf-arm-coresight.txt | 5 + > tools/perf/Makefile.config | 2 + > tools/perf/Makefile.perf | 17 +- > tools/perf/tests/Build | 1 + > tools/perf/tests/builtin-test-list.c | 207 ++++++++++++++++++ > tools/perf/tests/builtin-test-list.h | 12 + > tools/perf/tests/builtin-test.c | 152 ++----------- > tools/perf/tests/shell/coresight/Makefile | 30 +++ > .../tests/shell/coresight/Makefile.miniconfig | 14 ++ > .../tests/shell/coresight/asm_pure_loop.sh | 18 ++ > .../shell/coresight/asm_pure_loop/.gitignore | 1 + > .../shell/coresight/asm_pure_loop/Makefile | 34 +++ > .../coresight/asm_pure_loop/asm_pure_loop.S | 28 +++ > .../shell/coresight/memcpy_thread/.gitignore | 1 + > .../shell/coresight/memcpy_thread/Makefile | 33 +++ > .../coresight/memcpy_thread/memcpy_thread.c | 79 +++++++ > .../shell/coresight/memcpy_thread_16k_10.sh | 18 ++ > .../shell/coresight/thread_loop/.gitignore | 1 + > .../shell/coresight/thread_loop/Makefile | 33 +++ > .../shell/coresight/thread_loop/thread_loop.c | 86 ++++++++ > .../coresight/thread_loop_check_tid_10.sh | 19 ++ > .../coresight/thread_loop_check_tid_2.sh | 19 ++ > .../coresight/unroll_loop_thread/.gitignore | 1 + > .../coresight/unroll_loop_thread/Makefile | 33 +++ > .../unroll_loop_thread/unroll_loop_thread.c | 74 +++++++ > .../shell/coresight/unroll_loop_thread_10.sh | 18 ++ > tools/perf/tests/shell/lib/coresight.sh | 132 +++++++++++ > 30 files changed, 1094 insertions(+), 139 deletions(-) > create mode 100644 Documentation/trace/coresight/coresight-perf.rst > create mode 100644 tools/perf/Documentation/perf-arm-coresight.txt > create mode 100644 tools/perf/tests/builtin-test-list.c > create mode 100644 tools/perf/tests/builtin-test-list.h > create mode 100644 tools/perf/tests/shell/coresight/Makefile > create mode 100644 tools/perf/tests/shell/coresight/Makefile.miniconfig > create mode 100755 tools/perf/tests/shell/coresight/asm_pure_loop.sh > create mode 100644 tools/perf/tests/shell/coresight/asm_pure_loop/.gitignore > create mode 100644 tools/perf/tests/shell/coresight/asm_pure_loop/Makefile > create mode 100644 tools/perf/tests/shell/coresight/asm_pure_loop/asm_pure_loop.S > create mode 100644 tools/perf/tests/shell/coresight/memcpy_thread/.gitignore > create mode 100644 tools/perf/tests/shell/coresight/memcpy_thread/Makefile > create mode 100644 tools/perf/tests/shell/coresight/memcpy_thread/memcpy_thread.c > create mode 100755 tools/perf/tests/shell/coresight/memcpy_thread_16k_10.sh > create mode 100644 tools/perf/tests/shell/coresight/thread_loop/.gitignore > create mode 100644 tools/perf/tests/shell/coresight/thread_loop/Makefile > create mode 100644 tools/perf/tests/shell/coresight/thread_loop/thread_loop.c > 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 > create mode 100644 tools/perf/tests/shell/coresight/unroll_loop_thread/.gitignore > create mode 100644 tools/perf/tests/shell/coresight/unroll_loop_thread/Makefile > create mode 100644 tools/perf/tests/shell/coresight/unroll_loop_thread/unroll_loop_thread.c > create mode 100755 tools/perf/tests/shell/coresight/unroll_loop_thread_10.sh > create mode 100644 tools/perf/tests/shell/lib/coresight.sh > > -- > 2.32.0 -- - Arnaldo
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
Em Sat, Aug 13, 2022 at 10:17:39PM +0800, Leo Yan escreveu:
> 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>
[PATCH v7 14/14] perf test: Add relevant documentation about CoreSight testing
+ Tested-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
+ Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
---
Total patches: 14
---
NOTE: some trailers ignored due to from/email mismatches:
! Trailer: Link: https://lore.kernel.org/r/20220728145256.2985298-1-carsten.haitzler@foss.arm.com
Msg From: Arnaldo Carvalho de Melo <acme@kernel.org>
NOTE: Rerun with -S to apply them anyway
---
Cover: ./v7_20220812_carsten_haitzler_perf_test_add_trace_data_quality_tests_for_coresight.cover
Link: https://lore.kernel.org/r/20220812121641.336465-1-carsten.haitzler@foss.arm.com
Base: not specified
git am ./v7_20220812_carsten_haitzler_perf_test_add_trace_data_quality_tests_for_coresight.mbx
⬢[acme@toolbox perf]$ git am ./v7_20220812_carsten_haitzler_perf_test_add_trace_data_quality_tests_for_coresight.mbx
Applying: perf test: Refactor shell tests allowing subdirs
.git/rebase-apply/patch:56: trailing whitespace.
/*
warning: 1 line adds whitespace errors.
tools/perf/tests/builtin-test-list.c:29: trailing whitespace.
+/*
⬢[acme@toolbox perf]$
Fixing...
- Arnaldo
Em Sat, Aug 13, 2022 at 03:10:18PM -0300, Arnaldo Carvalho de Melo escreveu: > Em Sat, Aug 13, 2022 at 10:17:39PM +0800, Leo Yan escreveu: > > On Fri, Aug 12, 2022 at 04:02:50PM -0300, Arnaldo Carvalho de Melo wrote: > > So with fixing the merging conflict: > > > > Tested-by: Leo Yan <leo.yan@linaro.org> > > Reviewed-by: Leo Yan <leo.yan@linaro.org> > > [PATCH v7 14/14] perf test: Add relevant documentation about CoreSight testing > + Tested-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org) > + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org) > --- > Total patches: 14 > --- > NOTE: some trailers ignored due to from/email mismatches: > ! Trailer: Link: https://lore.kernel.org/r/20220728145256.2985298-1-carsten.haitzler@foss.arm.com > Msg From: Arnaldo Carvalho de Melo <acme@kernel.org> > NOTE: Rerun with -S to apply them anyway > --- > Cover: ./v7_20220812_carsten_haitzler_perf_test_add_trace_data_quality_tests_for_coresight.cover > Link: https://lore.kernel.org/r/20220812121641.336465-1-carsten.haitzler@foss.arm.com > Base: not specified > git am ./v7_20220812_carsten_haitzler_perf_test_add_trace_data_quality_tests_for_coresight.mbx > ⬢[acme@toolbox perf]$ git am ./v7_20220812_carsten_haitzler_perf_test_add_trace_data_quality_tests_for_coresight.mbx > Applying: perf test: Refactor shell tests allowing subdirs > .git/rebase-apply/patch:56: trailing whitespace. > /* > warning: 1 line adds whitespace errors. > tools/perf/tests/builtin-test-list.c:29: trailing whitespace. > +/* > ⬢[acme@toolbox perf]$ > > > Fixing... After that: ⬢[acme@toolbox perf]$ git am ./v7_20220812_carsten_haitzler_perf_test_add_trace_data_quality_tests_for_coresight.mbx Applying: perf test: Refactor shell tests allowing subdirs Applying: perf test: Add CoreSight shell lib shared code for future tests Applying: perf test: Add build infra for perf test tools for CoreSight tests error: patch failed: tools/perf/Makefile.perf:1015 error: tools/perf/Makefile.perf: patch does not apply .git/rebase-apply/patch:109: new blank line at EOF. + Patch failed at 0003 perf test: Add build infra for perf test tools for CoreSight tests hint: Use 'git am --show-current-patch=diff' to see the failed patch When you have resolved this problem, run "git am --continue". If you prefer to skip this patch, run "git am --skip" instead. To restore the original branch and stop patching, run "git am --abort". ⬢[acme@toolbox perf]$ Fixing...
Em Sat, Aug 13, 2022 at 03:11:23PM -0300, Arnaldo Carvalho de Melo escreveu: > Patch failed at 0003 perf test: Add build infra for perf test tools for CoreSight tests > hint: Use 'git am --show-current-patch=diff' to see the failed patch > When you have resolved this problem, run "git am --continue". > If you prefer to skip this patch, run "git am --skip" instead. > To restore the original branch and stop patching, run "git am --abort". > ⬢[acme@toolbox perf]$ > > Fixing... So, the first patch is merged, I now have to do the test builds to get what I have out to Linus, which will probably closed the merge window tomorrow, we can continue after that. - Arnaldo
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> On the next series, please add to the cover letter a summary of what changed on each repost. Thanks, - Arnaldo > > Carsten Haitzler (14): > perf test: Refactor shell tests allowing subdirs > perf test: Add CoreSight shell lib shared code for future tests > perf test: Add build infra for perf test tools for CoreSight tests > perf test: Add asm pureloop test tool > perf test: Add asm pureloop test shell script > perf test: Add git ignore for perf data generated by the CoreSight > tests > perf test: Add memcpy thread test tool > perf test: Add memcpy thread test shell script > perf test: Add thread loop test tool > perf test: Add thread loop test shell scripts > perf test: Add unroll thread test tool > perf test: Add unroll thread test shell script > perf test: Add git ignore for tmp and output files of CoreSight tests > perf test: Add relevant documentation about CoreSight testing > > .../trace/coresight/coresight-perf.rst | 158 +++++++++++++ > MAINTAINERS | 1 + > tools/perf/.gitignore | 6 +- > .../perf/Documentation/perf-arm-coresight.txt | 5 + > tools/perf/Makefile.config | 2 + > tools/perf/Makefile.perf | 17 +- > tools/perf/tests/Build | 1 + > tools/perf/tests/builtin-test-list.c | 207 ++++++++++++++++++ > tools/perf/tests/builtin-test-list.h | 12 + > tools/perf/tests/builtin-test.c | 152 ++----------- > tools/perf/tests/shell/coresight/Makefile | 30 +++ > .../tests/shell/coresight/Makefile.miniconfig | 14 ++ > .../tests/shell/coresight/asm_pure_loop.sh | 18 ++ > .../shell/coresight/asm_pure_loop/.gitignore | 1 + > .../shell/coresight/asm_pure_loop/Makefile | 34 +++ > .../coresight/asm_pure_loop/asm_pure_loop.S | 28 +++ > .../shell/coresight/memcpy_thread/.gitignore | 1 + > .../shell/coresight/memcpy_thread/Makefile | 33 +++ > .../coresight/memcpy_thread/memcpy_thread.c | 79 +++++++ > .../shell/coresight/memcpy_thread_16k_10.sh | 18 ++ > .../shell/coresight/thread_loop/.gitignore | 1 + > .../shell/coresight/thread_loop/Makefile | 33 +++ > .../shell/coresight/thread_loop/thread_loop.c | 86 ++++++++ > .../coresight/thread_loop_check_tid_10.sh | 19 ++ > .../coresight/thread_loop_check_tid_2.sh | 19 ++ > .../coresight/unroll_loop_thread/.gitignore | 1 + > .../coresight/unroll_loop_thread/Makefile | 33 +++ > .../unroll_loop_thread/unroll_loop_thread.c | 74 +++++++ > .../shell/coresight/unroll_loop_thread_10.sh | 18 ++ > tools/perf/tests/shell/lib/coresight.sh | 132 +++++++++++ > 30 files changed, 1094 insertions(+), 139 deletions(-) > create mode 100644 Documentation/trace/coresight/coresight-perf.rst > create mode 100644 tools/perf/Documentation/perf-arm-coresight.txt > create mode 100644 tools/perf/tests/builtin-test-list.c > create mode 100644 tools/perf/tests/builtin-test-list.h > create mode 100644 tools/perf/tests/shell/coresight/Makefile > create mode 100644 tools/perf/tests/shell/coresight/Makefile.miniconfig > create mode 100755 tools/perf/tests/shell/coresight/asm_pure_loop.sh > create mode 100644 tools/perf/tests/shell/coresight/asm_pure_loop/.gitignore > create mode 100644 tools/perf/tests/shell/coresight/asm_pure_loop/Makefile > create mode 100644 tools/perf/tests/shell/coresight/asm_pure_loop/asm_pure_loop.S > create mode 100644 tools/perf/tests/shell/coresight/memcpy_thread/.gitignore > create mode 100644 tools/perf/tests/shell/coresight/memcpy_thread/Makefile > create mode 100644 tools/perf/tests/shell/coresight/memcpy_thread/memcpy_thread.c > create mode 100755 tools/perf/tests/shell/coresight/memcpy_thread_16k_10.sh > create mode 100644 tools/perf/tests/shell/coresight/thread_loop/.gitignore > create mode 100644 tools/perf/tests/shell/coresight/thread_loop/Makefile > create mode 100644 tools/perf/tests/shell/coresight/thread_loop/thread_loop.c > 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 > create mode 100644 tools/perf/tests/shell/coresight/unroll_loop_thread/.gitignore > create mode 100644 tools/perf/tests/shell/coresight/unroll_loop_thread/Makefile > create mode 100644 tools/perf/tests/shell/coresight/unroll_loop_thread/unroll_loop_thread.c > create mode 100755 tools/perf/tests/shell/coresight/unroll_loop_thread_10.sh > create mode 100644 tools/perf/tests/shell/lib/coresight.sh > > -- > 2.32.0 -- - Arnaldo
Em Fri, Aug 12, 2022 at 03:51:17PM -0300, Arnaldo Carvalho de Melo escreveu: > Em Fri, Aug 12, 2022 at 01:16:27PM +0100, carsten.haitzler@foss.arm.com escreveu: > > 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> > On the next series, please add to the cover letter a summary of what > changed on each repost. I also saw that several of your patches got reviewed and given "Reviewed-by" tags, so if some of the patches in the previous versions didn't change and received Reviewed-by tags, please collect them on the current version. - Arnaldo
On 8/12/22 19:53, Arnaldo Carvalho de Melo wrote: > Em Fri, Aug 12, 2022 at 03:51:17PM -0300, Arnaldo Carvalho de Melo escreveu: >> Em Fri, Aug 12, 2022 at 01:16:27PM +0100, carsten.haitzler@foss.arm.com escreveu: >>> 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> > >> On the next series, please add to the cover letter a summary of what >> changed on each repost. > > I also saw that several of your patches got reviewed and given > "Reviewed-by" tags, so if some of the patches in the previous versions > didn't change and received Reviewed-by tags, please collect them on the > current version. I changed the Author. wrong email address (I missed it). So all of them changed.
Em Fri, Aug 12, 2022 at 03:53:16PM -0300, Arnaldo Carvalho de Melo escreveu:
> Em Fri, Aug 12, 2022 at 03:51:17PM -0300, Arnaldo Carvalho de Melo escreveu:
> > Em Fri, Aug 12, 2022 at 01:16:27PM +0100, carsten.haitzler@foss.arm.com escreveu:
> > > 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>
>
> > On the next series, please add to the cover letter a summary of what
> > changed on each repost.
>
> I also saw that several of your patches got reviewed and given
> "Reviewed-by" tags, so if some of the patches in the previous versions
> didn't change and received Reviewed-by tags, please collect them on the
> current version.
I tried getting v5 to see if b4 would find v6 and v7 and go on figuring
this out for us, but somehow it can't match v5 to v6 and v7:
⬢[acme@toolbox perf]$ b4 am -ctsl --cc-trailers 20220728145256.2985298-1-carsten.haitzler@foss.arm.com
Grabbing thread from lore.kernel.org/all/20220728145256.2985298-1-carsten.haitzler%40foss.arm.com/t.mbox.gz
Checking for newer revisions on https://lore.kernel.org/all/
Analyzing 36 messages in the thread
('Reviewed-by', 'Leo Yan <leo.yan@linaro.org>', None)
Checking attestation on all messages, may take a moment...
---
[PATCH v5 1/14] perf test: Refactor shell tests allowing subdirs
+ Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
[PATCH v5 2/14] perf test: Add CoreSight shell lib shared code for future tests
+ Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
[PATCH v5 3/14] perf test: Add build infra for perf test tools for CoreSight tests
[PATCH v5 4/14] perf test: Add asm pureloop test tool
+ Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
[PATCH v5 5/14] perf test: Add asm pureloop test shell script
+ Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
[PATCH v5 6/14] perf test: Add git ignore for perf data generated by the CoreSight tests
+ Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
[PATCH v5 7/14] perf test: Add memcpy thread test tool
+ Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
[PATCH v5 8/14] perf test: Add memcpy thread test shell script
+ Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
[PATCH v5 9/14] perf test: Add thread loop test tool
+ Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
[PATCH v5 10/14] perf test: Add thread loop test shell scripts
+ Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
[PATCH v5 11/14] perf test: Add unroll thread test tool
+ Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
[PATCH v5 12/14] perf test: Add unroll thread test shell script
+ Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
[PATCH v5 13/14] perf test: Add git ignore for tmp and output files of CoreSight tests
+ Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
[PATCH v5 14/14] perf test: Add relevant documentation about CoreSight testing
+ Reviewed-by: Mike Leach <mike.leach@linaro.org> (✓ DKIM/linaro.org)
+ Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
---
Total patches: 14
---
Cover: ./v5_20220728_carsten_haitzler_a_patch_series_improving_data_quality_of_perf_test_for_coresight.cover
Link: https://lore.kernel.org/r/20220728145256.2985298-1-carsten.haitzler@foss.arm.com
Base: not specified
git am ./v5_20220728_carsten_haitzler_a_patch_series_improving_data_quality_of_perf_test_for_coresight.mbx
⬢[acme@toolbox perf]$
- Arnaldo
Em Fri, Aug 12, 2022 at 03:55:15PM -0300, Arnaldo Carvalho de Melo escreveu:
> Em Fri, Aug 12, 2022 at 03:53:16PM -0300, Arnaldo Carvalho de Melo escreveu:
> > Em Fri, Aug 12, 2022 at 03:51:17PM -0300, Arnaldo Carvalho de Melo escreveu:
> > > Em Fri, Aug 12, 2022 at 01:16:27PM +0100, carsten.haitzler@foss.arm.com escreveu:
> > > > 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>
> > > On the next series, please add to the cover letter a summary of what
> > > changed on each repost.
> > I also saw that several of your patches got reviewed and given
> > "Reviewed-by" tags, so if some of the patches in the previous versions
> > didn't change and received Reviewed-by tags, please collect them on the
> > current version.
> I tried getting v5 to see if b4 would find v6 and v7 and go on figuring
> this out for us, but somehow it can't match v5 to v6 and v7:
It seems you changed the subject on the cover letter, and AFAIK that is
what makes b4 find a previous version :-\
- Arnaldo
> ⬢[acme@toolbox perf]$ b4 am -ctsl --cc-trailers 20220728145256.2985298-1-carsten.haitzler@foss.arm.com
> Grabbing thread from lore.kernel.org/all/20220728145256.2985298-1-carsten.haitzler%40foss.arm.com/t.mbox.gz
> Checking for newer revisions on https://lore.kernel.org/all/
> Analyzing 36 messages in the thread
> ('Reviewed-by', 'Leo Yan <leo.yan@linaro.org>', None)
> Checking attestation on all messages, may take a moment...
> ---
> [PATCH v5 1/14] perf test: Refactor shell tests allowing subdirs
> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
> [PATCH v5 2/14] perf test: Add CoreSight shell lib shared code for future tests
> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
> [PATCH v5 3/14] perf test: Add build infra for perf test tools for CoreSight tests
> [PATCH v5 4/14] perf test: Add asm pureloop test tool
> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
> [PATCH v5 5/14] perf test: Add asm pureloop test shell script
> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
> [PATCH v5 6/14] perf test: Add git ignore for perf data generated by the CoreSight tests
> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
> [PATCH v5 7/14] perf test: Add memcpy thread test tool
> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
> [PATCH v5 8/14] perf test: Add memcpy thread test shell script
> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
> [PATCH v5 9/14] perf test: Add thread loop test tool
> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
> [PATCH v5 10/14] perf test: Add thread loop test shell scripts
> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
> [PATCH v5 11/14] perf test: Add unroll thread test tool
> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
> [PATCH v5 12/14] perf test: Add unroll thread test shell script
> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
> [PATCH v5 13/14] perf test: Add git ignore for tmp and output files of CoreSight tests
> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
> [PATCH v5 14/14] perf test: Add relevant documentation about CoreSight testing
> + Reviewed-by: Mike Leach <mike.leach@linaro.org> (✓ DKIM/linaro.org)
> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
> ---
> Total patches: 14
> ---
> Cover: ./v5_20220728_carsten_haitzler_a_patch_series_improving_data_quality_of_perf_test_for_coresight.cover
> Link: https://lore.kernel.org/r/20220728145256.2985298-1-carsten.haitzler@foss.arm.com
> Base: not specified
> git am ./v5_20220728_carsten_haitzler_a_patch_series_improving_data_quality_of_perf_test_for_coresight.mbx
> ⬢[acme@toolbox perf]$
On 8/12/22 20:00, Arnaldo Carvalho de Melo wrote:
> Em Fri, Aug 12, 2022 at 03:55:15PM -0300, Arnaldo Carvalho de Melo escreveu:
>> Em Fri, Aug 12, 2022 at 03:53:16PM -0300, Arnaldo Carvalho de Melo escreveu:
>>> Em Fri, Aug 12, 2022 at 03:51:17PM -0300, Arnaldo Carvalho de Melo escreveu:
>>>> Em Fri, Aug 12, 2022 at 01:16:27PM +0100, carsten.haitzler@foss.arm.com escreveu:
>>>>> 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>
>
>>>> On the next series, please add to the cover letter a summary of what
>>>> changed on each repost.
>
>>> I also saw that several of your patches got reviewed and given
>>> "Reviewed-by" tags, so if some of the patches in the previous versions
>>> didn't change and received Reviewed-by tags, please collect them on the
>>> current version.
>
>> I tried getting v5 to see if b4 would find v6 and v7 and go on figuring
>> this out for us, but somehow it can't match v5 to v6 and v7:
>
> It seems you changed the subject on the cover letter, and AFAIK that is
> what makes b4 find a previous version :-\
I was asked to change the subject... so I did. :)
> - Arnaldo
>
>> ⬢[acme@toolbox perf]$ b4 am -ctsl --cc-trailers 20220728145256.2985298-1-carsten.haitzler@foss.arm.com
>> Grabbing thread from lore.kernel.org/all/20220728145256.2985298-1-carsten.haitzler%40foss.arm.com/t.mbox.gz
>> Checking for newer revisions on https://lore.kernel.org/all/
>> Analyzing 36 messages in the thread
>> ('Reviewed-by', 'Leo Yan <leo.yan@linaro.org>', None)
>> Checking attestation on all messages, may take a moment...
>> ---
>> [PATCH v5 1/14] perf test: Refactor shell tests allowing subdirs
>> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
>> [PATCH v5 2/14] perf test: Add CoreSight shell lib shared code for future tests
>> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
>> [PATCH v5 3/14] perf test: Add build infra for perf test tools for CoreSight tests
>> [PATCH v5 4/14] perf test: Add asm pureloop test tool
>> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
>> [PATCH v5 5/14] perf test: Add asm pureloop test shell script
>> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
>> [PATCH v5 6/14] perf test: Add git ignore for perf data generated by the CoreSight tests
>> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
>> [PATCH v5 7/14] perf test: Add memcpy thread test tool
>> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
>> [PATCH v5 8/14] perf test: Add memcpy thread test shell script
>> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
>> [PATCH v5 9/14] perf test: Add thread loop test tool
>> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
>> [PATCH v5 10/14] perf test: Add thread loop test shell scripts
>> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
>> [PATCH v5 11/14] perf test: Add unroll thread test tool
>> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
>> [PATCH v5 12/14] perf test: Add unroll thread test shell script
>> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
>> [PATCH v5 13/14] perf test: Add git ignore for tmp and output files of CoreSight tests
>> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
>> [PATCH v5 14/14] perf test: Add relevant documentation about CoreSight testing
>> + Reviewed-by: Mike Leach <mike.leach@linaro.org> (✓ DKIM/linaro.org)
>> + Reviewed-by: Leo Yan <leo.yan@linaro.org> (✓ DKIM/linaro.org)
>> ---
>> Total patches: 14
>> ---
>> Cover: ./v5_20220728_carsten_haitzler_a_patch_series_improving_data_quality_of_perf_test_for_coresight.cover
>> Link: https://lore.kernel.org/r/20220728145256.2985298-1-carsten.haitzler@foss.arm.com
>> Base: not specified
>> git am ./v5_20220728_carsten_haitzler_a_patch_series_improving_data_quality_of_perf_test_for_coresight.mbx
>> ⬢[acme@toolbox perf]$
© 2016 - 2026 Red Hat, Inc.