Re: [PATCH v4 00/12] perf metric fixes and test

From: Jiri Olsa
Date: Thu May 07 2020 - 04:45:05 EST


On Fri, May 01, 2020 at 10:33:21AM -0700, Ian Rogers wrote:
> Add a test that all perf metrics (for your architecture) are parsable
> with the simple expression parser. Attempt to parse all events in
> metrics but only fail if the metric is for the current CPU. Fix bugs
> in the expr parser, x86 and powerpc metrics. Improve debug messages
> around add PMU config term failures.
>
> v4 rebases after Kajol Jain's patches and fixes an asprintf warning.
> v3 adds parse event testing of ids and improves debug messages for add
> PMU. These messages are paticular visible with 'perf test 10
> -vvv'. It moves the testing logic from tests/expr.c to
> tests/pmu-events.c as suggested by John Garry
> <john.garry@xxxxxxxxxx>.
> v2 adds Fixes tags to commit messages for when broken metrics were
> first added. Adds a debug warning for division by zero in expr, and
> adds a workaround for id values in the expr test necessary for
> powerpc. It also fixes broken power8 and power9 metrics.
>
> Ian Rogers (12):
> perf expr: unlimited escaped characters in a symbol
> perf metrics: fix parse errors in cascade lake metrics
> perf metrics: fix parse errors in skylake metrics
> perf expr: allow ',' to be an other token
> perf expr: increase max other
> perf expr: parse numbers as doubles
> perf expr: debug lex if debugging yacc
> perf metrics: fix parse errors in power8 metrics
> perf metrics: fix parse errors in power9 metrics
> perf expr: print a debug message for division by zero

heya,
could we please get the 1st 10 patches in? they are important,
and let's not block them with new versions for patches 11/12

Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>

thanks,
jirka

> perf parse-events: expand add PMU error/verbose messages
> perf test: improve pmu event metric testing
>
> tools/perf/arch/x86/util/intel-pt.c | 32 ++--
> .../arch/powerpc/power8/metrics.json | 2 +-
> .../arch/powerpc/power9/metrics.json | 2 +-
> .../arch/x86/cascadelakex/clx-metrics.json | 10 +-
> .../arch/x86/skylakex/skx-metrics.json | 4 +-
> tools/perf/tests/builtin-test.c | 5 +
> tools/perf/tests/expr.c | 1 +
> tools/perf/tests/pmu-events.c | 156 +++++++++++++++++-
> tools/perf/tests/pmu.c | 4 +-
> tools/perf/tests/tests.h | 2 +
> tools/perf/util/expr.c | 1 +
> tools/perf/util/expr.h | 2 +-
> tools/perf/util/expr.l | 16 +-
> tools/perf/util/expr.y | 16 +-
> tools/perf/util/parse-events.c | 29 +++-
> tools/perf/util/pmu.c | 33 ++--
> tools/perf/util/pmu.h | 2 +-
> 17 files changed, 262 insertions(+), 55 deletions(-)
>
> --
> 2.26.2.526.g744177e7f7-goog
>