Re: [PATCH 4/4] perf expr: Report line number with error

From: Jiri Olsa
Date: Wed May 13 2020 - 07:34:34 EST


On Wed, May 13, 2020 at 12:09:30AM -0700, Ian Rogers wrote:
> On Mon, May 11, 2020 at 1:54 PM Jiri Olsa <jolsa@xxxxxxxxxx> wrote:
> >
> > Display line number on when parsing custom metrics file, like:
> >
> > $ cat metrics
> > // IPC
> > mine1 = inst_retired.any / cpu_clk_unhalted.thread;
> >
> > krava
> > $ sudo perf stat --metrics-file ./metrics -M mine1 -a -I 1000 --metric-only
> > failed to parse metrics file: ./metrics:4
> >
> > Please note that because the grammar is flexible on new lines,
> > the syntax could be broken on the next 'not fitting' item and
> > not the first wrong word, like:
> >
> > $ cat metrics
> > // IPC
> > krava
> > mine1 = inst_retired.any / cpu_clk_unhalted.thread;
> > $ sudo perf stat --metrics-file ./metrics -M mine1 -a -I 1000 --metric-only
> > failed to parse metrics file: ./metrics:3
>
> A line number is better than nothing :-) It'd be nice to be told about
> broken events and more information about what's broken in the line. A
> common failure is @ vs / encoding and also no-use or misuse of \\.
> Perhaps expand the test coverage.

yep, error reporting needs more changes.. but the line is crucial ;-)

jirka