Re: [PATCH 12/54] perf tools: Enable config raw and numeric events

From: Jiri Olsa
Date: Fri Feb 12 2016 - 08:53:18 EST


On Fri, Feb 05, 2016 at 02:01:37PM +0000, Wang Nan wrote:
> This patch allows setting config terms for raw and numeric events.
> For example:
>
> # perf stat -e cycles/name=cyc/ ls
> ...
> 1821108 cyc
> ...
>
> # perf stat -e r6530160/name=event/ ls
> ...
> 1103195 event
> ...
>
> # perf record -e cycles -e 4:0x6530160/name=evtx,call-graph=fp/ -a sleep 1
> ...
> # perf report --stdio
> ...
> # Samples: 124 of event 'cycles'
> 46.61% 0.00% swapper [kernel.vmlinux] [k] cpu_startup_entry
> 41.26% 0.00% swapper [kernel.vmlinux] [k] start_secondary
> ...
> # Samples: 91 of event 'evtx'
> ...
> 93.76% 0.00% swapper [kernel.vmlinux] [k] cpu_startup_entry
> |
> ---cpu_startup_entry
> |
> |--66.63%--call_cpuidle
> | cpuidle_enter
> | |


got compile error:


[jolsa@krava perf]$ make JOBS=1
BUILD: Doing 'make -j1' parallel build
BISON util/parse-events-bison.c
util/parse-events.y:436.23-38: error: symbol opt_event_config is used, but is not defined as a token and has no rules
PE_VALUE ':' PE_VALUE opt_event_config
^^^^^^^^^^^^^^^^
util/parse-events.y:442.68-69: error: $4 of âevent_legacy_numericâ has no declared type
ABORT_ON(parse_events_add_numeric(data, list, (u32)$1, $3, $4));
^^
util/parse-events.y:443.34-35: error: $4 of âevent_legacy_numericâ has no declared type
parse_events__free_terms($4);
^^
util/parse-events.y:454.74-75: error: $2 of âevent_legacy_rawâ has no declared type
ABORT_ON(parse_events_add_numeric(data, list, PERF_TYPE_RAW, $1, $2));
^^
util/parse-events.y:455.34-35: error: $2 of âevent_legacy_rawâ has no declared type
parse_events__free_terms($2);
^^
util/Build:122: recipe for target 'util/parse-events-bison.c' failed
make[3]: *** [util/parse-events-bison.c] Error 1
/home/jolsa/kernel/linux-perf/tools/build/Makefile.build:116: recipe for target 'util' failed
make[2]: *** [util] Error 2
Makefile.perf:434: recipe for target 'libperf-in.o' failed
make[1]: *** [libperf-in.o] Error 2
Makefile:68: recipe for target 'all' failed
make: *** [all] Error 2


jirka