Em Wed, Oct 05, 2016 at 12:47:10PM -0700, Andi Kleen escreveu:
From: Andi Kleen <ak@xxxxxxxxxxxxxxx>So, I tried it with the example provided in the thread for a previous
This is a generic bug fix, but it helps with Sukadev's JSON event tree
where such events can happen.
Any event inclduing a .c/.o/.bpf currently triggers BPF compilation or loading
and then an error. This can happen for some Intel JSON events, which cannot
be used.
Fix the scanner to only match for .o or .c or .bpf at the end.
This will prevent loading multiple BPF scripts separated with comma,
but I assume this is acceptable.
version of this patch (IIRC) and it still fails:
[acme@jouet linux]$ perf stat -e '{unc_p_clockticks,unc_p_power_state_occupancy.cores_c0}' -a -I 1000
ERROR: problems with path {unc_p_clockticks,unc_p_power_state_occupancy.c: No such file or directory
event syntax error: '{unc_p_clockticks,unc_p_power_state_occupancy.cores_c0}'
\___ Failed to load {unc_p_clockticks,unc_p_power_state_occupancy.c from source: Error when compiling BPF scriptlet
(add -v to see detail)
Run 'perf list' for a list of valid events
Usage: perf stat [<options>] [<command>]
-e, --event <event> event selector. use 'perf list' to list available events
[acme@jouet linux]$
And with another event that for sure is available on this machine:
[acme@jouet linux]$ perf stat -e '{uops_executed.core_cycles_ge_2}' -I 1000 usleep 10
ERROR: problems with path {uops_executed.c: No such file or directory
event syntax error: '{uops_executed.core_cycles_ge_2}'
\___ Failed to load {uops_executed.c from source: Error when compiling BPF scriptlet
(add -v to see detail)
Run 'perf list' for a list of valid events
Usage: perf stat [<options>] [<command>]
-e, --event <event> event selector. use 'perf list' to list available events
[acme@jouet linux]$
I thought this was due to the Makefile not noticing the change in the .l files, but I made
sure I deleted the build dir and rebuilt from scratch, same problem.
- Arnaldo