On Sun, Sep 18, 2016 at 06:20:04PM +0800, Wangnan (F) wrote:
> 
> 
> On 2016/9/18 9:02, Andi Kleen wrote:
> > From: Andi Kleen <a...@linux.intel.com>
> > 
> > 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.
> > 
> > Cc: wangn...@huawei.com
> > Cc: suka...@linux.vnet.ibm.com
> > Signed-off-by: Andi Kleen <a...@linux.intel.com>
> 
> I tested '.c' in middle of an event:
> 
>  # perf trace --event 'aaa.ccc'
>  invalid or unsupported event: 'aaa.ccc'
>  Run 'perf list' for a list of valid events
>  ...
> 
> It is not recongnized as a BPF source.
> 
> So could you please provide an example to show how
> this potential bug breaks the parsing of new events?

This is with the upcoming JSON uncore events:

$ 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

-Andi

Reply via email to