2022-11-30 11:59:07

by James Clark

[permalink] [raw]
Subject: [PATCH 1/2] perf tests: Fix "perf stat JSON output linter" test for new output

Commit c4b41b83c250 ("perf stat: Rename "aggregate-number" to
"cpu-count" in JSON") renamed a field, so update the tests to reflect
this.

This fixes the following failure:

$ sudo ./perf test "json output" -vvv
96: perf stat JSON output linter :
--- start ---
test child forked, pid 327720
Checking json output: no args [Success]
Checking json output: system wide [Success]
Checking json output: interval [Success]
Checking json output: event [Success]
Checking json output: per thread [Success]
Checking json output: per node Test failed for input:
...
Traceback (most recent call last):
File "./tools/perf/tests/shell/lib/perf_json_output_lint.py", line 93, in <module>
check_json_output(expected_items)
File "./tools/perf/tests/shell/lib/perf_json_output_lint.py", line 78, in check_json_output
raise RuntimeError(f'Unexpected key: key={key} value={value}')
RuntimeError: Unexpected key: key=cpu-count value=16
test child finished with -1
---- end ----
perf stat JSON output linter: FAILED!

Fixes: c4b41b83c250 ("perf stat: Rename "aggregate-number" to "cpu-count" in JSON")
Signed-off-by: James Clark <[email protected]>
---
tools/perf/tests/shell/lib/perf_json_output_lint.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/tests/shell/lib/perf_json_output_lint.py b/tools/perf/tests/shell/lib/perf_json_output_lint.py
index d90f8d102eb9..9c073e257d33 100644
--- a/tools/perf/tests/shell/lib/perf_json_output_lint.py
+++ b/tools/perf/tests/shell/lib/perf_json_output_lint.py
@@ -54,7 +54,7 @@ def check_json_output(expected_items):
raise RuntimeError(f'wrong number of fields. counted {count} expected {expected_items}'
f' in \'{line}\'')
checks = {
- 'aggregate-number': lambda x: isfloat(x),
+ 'cpu-count': lambda x: isfloat(x),
'core': lambda x: True,
'counter-value': lambda x: is_counter_value(x),
'cgroup': lambda x: True,
--
2.25.1


2022-11-30 19:04:05

by Namhyung Kim

[permalink] [raw]
Subject: Re: [PATCH 1/2] perf tests: Fix "perf stat JSON output linter" test for new output

Hi,

On Wed, Nov 30, 2022 at 10:19 AM Ian Rogers <[email protected]> wrote:
>
> On Wed, Nov 30, 2022 at 3:15 AM James Clark <[email protected]> wrote:
> >
> > Commit c4b41b83c250 ("perf stat: Rename "aggregate-number" to
> > "cpu-count" in JSON") renamed a field, so update the tests to reflect
> > this.
> >
> > This fixes the following failure:
> >
> > $ sudo ./perf test "json output" -vvv
> > 96: perf stat JSON output linter :
> > --- start ---
> > test child forked, pid 327720
> > Checking json output: no args [Success]
> > Checking json output: system wide [Success]
> > Checking json output: interval [Success]
> > Checking json output: event [Success]
> > Checking json output: per thread [Success]
> > Checking json output: per node Test failed for input:
> > ...
> > Traceback (most recent call last):
> > File "./tools/perf/tests/shell/lib/perf_json_output_lint.py", line 93, in <module>
> > check_json_output(expected_items)
> > File "./tools/perf/tests/shell/lib/perf_json_output_lint.py", line 78, in check_json_output
> > raise RuntimeError(f'Unexpected key: key={key} value={value}')
> > RuntimeError: Unexpected key: key=cpu-count value=16
> > test child finished with -1
> > ---- end ----
> > perf stat JSON output linter: FAILED!
> >
> > Fixes: c4b41b83c250 ("perf stat: Rename "aggregate-number" to "cpu-count" in JSON")
> > Signed-off-by: James Clark <[email protected]>
>
> Namhyung mentioned reverting change c4b41b83c250, in which case
> merging this would break the test again. I think the revert is better.

Yep, I will send the revert soon.

Thanks,
Namhyung

2022-11-30 19:10:59

by Ian Rogers

[permalink] [raw]
Subject: Re: [PATCH 1/2] perf tests: Fix "perf stat JSON output linter" test for new output

On Wed, Nov 30, 2022 at 3:15 AM James Clark <[email protected]> wrote:
>
> Commit c4b41b83c250 ("perf stat: Rename "aggregate-number" to
> "cpu-count" in JSON") renamed a field, so update the tests to reflect
> this.
>
> This fixes the following failure:
>
> $ sudo ./perf test "json output" -vvv
> 96: perf stat JSON output linter :
> --- start ---
> test child forked, pid 327720
> Checking json output: no args [Success]
> Checking json output: system wide [Success]
> Checking json output: interval [Success]
> Checking json output: event [Success]
> Checking json output: per thread [Success]
> Checking json output: per node Test failed for input:
> ...
> Traceback (most recent call last):
> File "./tools/perf/tests/shell/lib/perf_json_output_lint.py", line 93, in <module>
> check_json_output(expected_items)
> File "./tools/perf/tests/shell/lib/perf_json_output_lint.py", line 78, in check_json_output
> raise RuntimeError(f'Unexpected key: key={key} value={value}')
> RuntimeError: Unexpected key: key=cpu-count value=16
> test child finished with -1
> ---- end ----
> perf stat JSON output linter: FAILED!
>
> Fixes: c4b41b83c250 ("perf stat: Rename "aggregate-number" to "cpu-count" in JSON")
> Signed-off-by: James Clark <[email protected]>

Namhyung mentioned reverting change c4b41b83c250, in which case
merging this would break the test again. I think the revert is better.

Thanks,
Ian

> ---
> tools/perf/tests/shell/lib/perf_json_output_lint.py | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/perf/tests/shell/lib/perf_json_output_lint.py b/tools/perf/tests/shell/lib/perf_json_output_lint.py
> index d90f8d102eb9..9c073e257d33 100644
> --- a/tools/perf/tests/shell/lib/perf_json_output_lint.py
> +++ b/tools/perf/tests/shell/lib/perf_json_output_lint.py
> @@ -54,7 +54,7 @@ def check_json_output(expected_items):
> raise RuntimeError(f'wrong number of fields. counted {count} expected {expected_items}'
> f' in \'{line}\'')
> checks = {
> - 'aggregate-number': lambda x: isfloat(x),
> + 'cpu-count': lambda x: isfloat(x),
> 'core': lambda x: True,
> 'counter-value': lambda x: is_counter_value(x),
> 'cgroup': lambda x: True,
> --
> 2.25.1
>

2022-12-02 18:55:58

by Arnaldo Carvalho de Melo

[permalink] [raw]
Subject: Re: [PATCH 1/2] perf tests: Fix "perf stat JSON output linter" test for new output

Em Wed, Nov 30, 2022 at 10:18:49AM -0800, Ian Rogers escreveu:
> On Wed, Nov 30, 2022 at 3:15 AM James Clark <[email protected]> wrote:
> >
> > Commit c4b41b83c250 ("perf stat: Rename "aggregate-number" to
> > "cpu-count" in JSON") renamed a field, so update the tests to reflect
> > this.
> >
> > This fixes the following failure:
> >
> > $ sudo ./perf test "json output" -vvv
> > 96: perf stat JSON output linter :
> > --- start ---
> > test child forked, pid 327720
> > Checking json output: no args [Success]
> > Checking json output: system wide [Success]
> > Checking json output: interval [Success]
> > Checking json output: event [Success]
> > Checking json output: per thread [Success]
> > Checking json output: per node Test failed for input:
> > ...
> > Traceback (most recent call last):
> > File "./tools/perf/tests/shell/lib/perf_json_output_lint.py", line 93, in <module>
> > check_json_output(expected_items)
> > File "./tools/perf/tests/shell/lib/perf_json_output_lint.py", line 78, in check_json_output
> > raise RuntimeError(f'Unexpected key: key={key} value={value}')
> > RuntimeError: Unexpected key: key=cpu-count value=16
> > test child finished with -1
> > ---- end ----
> > perf stat JSON output linter: FAILED!
> >
> > Fixes: c4b41b83c250 ("perf stat: Rename "aggregate-number" to "cpu-count" in JSON")
> > Signed-off-by: James Clark <[email protected]>
>
> Namhyung mentioned reverting change c4b41b83c250, in which case
> merging this would break the test again. I think the revert is better.

Applied the revert, with an Acked-by: you.

> Thanks,
> Ian
>
> > ---
> > tools/perf/tests/shell/lib/perf_json_output_lint.py | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/tools/perf/tests/shell/lib/perf_json_output_lint.py b/tools/perf/tests/shell/lib/perf_json_output_lint.py
> > index d90f8d102eb9..9c073e257d33 100644
> > --- a/tools/perf/tests/shell/lib/perf_json_output_lint.py
> > +++ b/tools/perf/tests/shell/lib/perf_json_output_lint.py
> > @@ -54,7 +54,7 @@ def check_json_output(expected_items):
> > raise RuntimeError(f'wrong number of fields. counted {count} expected {expected_items}'
> > f' in \'{line}\'')
> > checks = {
> > - 'aggregate-number': lambda x: isfloat(x),
> > + 'cpu-count': lambda x: isfloat(x),
> > 'core': lambda x: True,
> > 'counter-value': lambda x: is_counter_value(x),
> > 'cgroup': lambda x: True,
> > --
> > 2.25.1
> >

--

- Arnaldo