[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAP-5=fUwjYH8uvmsgSN=1exN1FEEBEPQHFYwgq4cJEeOApFNQg@mail.gmail.com>
Date: Sat, 21 Dec 2024 09:10:09 -0800
From: Ian Rogers <irogers@...gle.com>
To: Adrian Hunter <adrian.hunter@...el.com>
Cc: Arnaldo Carvalho de Melo <acme@...nel.org>, Namhyung Kim <namhyung@...nel.org>, Jiri Olsa <jolsa@...nel.org>,
Kan Liang <kan.liang@...ux.intel.com>, Leo Yan <leo.yan@....com>,
linux-kernel@...r.kernel.org, linux-perf-users@...r.kernel.org
Subject: Re: [PATCH V16 7/7] perf intel-pt: Add a test for pause / resume
On Sun, Dec 15, 2024 at 11:03 PM Adrian Hunter <adrian.hunter@...el.com> wrote:
>
> Add a simple sub-test to the "Miscellaneous Intel PT testing" test to
> check pause / resume.
>
> Signed-off-by: Adrian Hunter <adrian.hunter@...el.com>
> Acked-by: Ian Rogers <irogers@...gle.com>
> Reviewed-by: Andi Kleen <ak@...ux.intel.com>
> ---
> tools/perf/tests/shell/test_intel_pt.sh | 28 +++++++++++++++++++++++++
> 1 file changed, 28 insertions(+)
>
> diff --git a/tools/perf/tests/shell/test_intel_pt.sh b/tools/perf/tests/shell/test_intel_pt.sh
> index e6f0070975f6..f3a9a040bacc 100755
> --- a/tools/perf/tests/shell/test_intel_pt.sh
> +++ b/tools/perf/tests/shell/test_intel_pt.sh
> @@ -644,6 +644,33 @@ test_pipe()
> return 0
> }
>
> +test_pause_resume()
> +{
> + echo "--- Test with pause / resume ---"
> + if ! perf_record_no_decode -o "${perfdatafile}" -e intel_pt/aux-action=start-paused/u uname ; then
> + echo "SKIP: pause / resume is not supported"
> + return 2
> + fi
> + if ! perf_record_no_bpf -o "${perfdatafile}" \
> + -e intel_pt/aux-action=start-paused/u \
> + -e instructions/period=50000,aux-action=resume,name=Resume/u \
> + -e instructions/period=100000,aux-action=pause,name=Pause/u uname ; then
> + echo "perf record with pause / resume failed"
> + return 1
> + fi
> + if ! perf script -i "${perfdatafile}" --itrace=b -Fperiod,event | \
> + awk 'BEGIN {paused=1;branches=0}
> + /Resume/ {paused=0}
> + /branches/ {if (paused) exit 1;branches=1}
> + /Pause/ {paused=1}
> + END {if (!branches) exit 1}' ; then
> + echo "perf record with pause / resume failed"
> + return 1
> + fi
> + echo OK
Hi,
this new test is now constantly making "Miscellaneous Intel PT testing" fail:
```
...
--- Test with pause / resume ---
Error:
Failure to open event 'intel_pt/aux-action=start-paused/u' on PMU
'intel_pt' which will be removed.
The 'aux_action' feature is not supported, update the kernel.
Linux
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.003 MB
/tmp/perf-test-intel-pt-sh.Hs8jcq0ADc/test-perf.data ]
Error:
Failure to open event 'intel_pt/aux-action=start-paused/u' on PMU
'intel_pt' which will be removed.
The 'aux_action' feature is not supported, update the kernel.
Error:
Failure to open event 'Resume' on PMU 'cpu' which will be removed.
The 'aux_action' feature is not supported, update the kernel.
Error:
Failure to open event 'Pause' on PMU 'cpu' which will be removed.
The 'aux_action' feature is not supported, update the kernel.
Linux
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.005 MB
/tmp/perf-test-intel-pt-sh.Hs8jcq0ADc/test-perf.data ]
perf record with pause / resume failed
--- Cleaning up ---
...
```
Should the fail be turned into a skip for missing kernel support?
Thanks,
Ian
> + return 0
> +}
> +
> count_result()
> {
> if [ "$1" -eq 2 ] ; then
> @@ -672,6 +699,7 @@ test_power_event || ret=$? ; count_result $ret ; ret=0
> test_no_tnt || ret=$? ; count_result $ret ; ret=0
> test_event_trace || ret=$? ; count_result $ret ; ret=0
> test_pipe || ret=$? ; count_result $ret ; ret=0
> +test_pause_resume || ret=$? ; count_result $ret ; ret=0
>
> cleanup
>
> --
> 2.43.0
>
Powered by blists - more mailing lists