Re: [PATCH] perf, tools: Improve error messages for missing PMUs

From: Arnaldo Carvalho de Melo
Date: Wed Sep 13 2017 - 09:34:10 EST


Em Mon, Sep 11, 2017 at 05:26:36PM -0700, Andi Kleen escreveu:
> From: Andi Kleen <ak@xxxxxxxxxxxxxxx>
>
> When a PMU is missing print a better error message mentioning
> the missing PMU.
>
> % mkdir empty
> % mount --bind empty /sys/devices/msr
> % perf stat -M Summary true
> event syntax error: '{inst_retired.any,cycles}:W,{cpu_clk_unhalted.thread}:W,{inst_retired.any}:W,{cpu_clk_unhalted.ref_tsc,msr/tsc/}:W,{fp_comp_ops_exe.sse_scalar..'
> \___ Cannot find PMU `msr'. Missing kernel support?
>
> It still cannot find the right column for aliases, but it's already a vast improvement.

CC /tmp/build/perf/util/parse-events.o
util/parse-events.c: In function â__parse_events_add_pmuâ:
util/parse-events.c:1227:3: error: ignoring return value of âasprintfâ, declared with attribute warn_unused_result [-Werror=unused-result]
(void)asprintf(&err->str,
^~~~~~~~~~~~~~~~~~~~~~~~~
"Cannot find PMU `%s'. Missing kernel support?",
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
name);
~~~~~
cc1: all warnings being treated as errors
mv: cannot stat '/tmp/build/perf/util/.parse-events.o.tmp': No such file or directory
make[4]: *** [/home/acme/git/linux/tools/build/Makefile.build:95: /tmp/build/perf/util/parse-events.o] Error 1
make[3]: *** [/home/acme/git/linux/tools/build/Makefile.build:138: util] Error 2
make[2]: *** [Makefile.perf:595: /tmp/build/perf/libperf-in.o] Error 2
make[1]: *** [Makefile.perf:210: sub-make] Error 2
make: *** [Makefile:109: install-bin] Error 2
make: Leaving directory '/home/acme/git/linux/tools/perf'