Messages in this thread | | | Date | Wed, 4 Oct 2017 09:27:11 -0700 | From | Andi Kleen <> | Subject | Re: [PATCH 2/2] perf, tools: Don't force MetricExprs to lower case |
| |
On Wed, Oct 04, 2017 at 12:30:52PM +0200, Jiri Olsa wrote: > On Tue, Oct 03, 2017 at 01:06:05PM -0300, Arnaldo Carvalho de Melo wrote: > > Em Tue, Sep 12, 2017 at 12:56:43PM -0700, Andi Kleen escreveu: > > > From: Andi Kleen <ak@linux.intel.com> > > > > > > There are still problems with BPF misinterpreting some events > > > that include .c. An earlier fix made it work for stand alone > > > aliases, but it still fails for more complex constructs. > > > > Hi Wang, Jiri, > > > > Can you please take a look at this and see if there is something > > we can do to help Andi? > > > > - Arnaldo > > > > > REJECT keeps trying and trying a shorter string until > > > .c is matched and it appears like a valid BPF path. > > > > > > % perf stat -e cpu/uops_executed.core,cmask=1/ true > > > bpf: builtin compilation failed: -95, try external compiler > > > ERROR: problems with path cpu/uops_executed.c: No such file or directory > > > event syntax error: 'cpu/uops_executed.core,cmask=1/' > > > \___ Failed to load cpu/uops_executed.c from source: Error when compiling BPF scriptlet > > > > > > I tried to fix it, but it exceeds my flex knowledge, because > > > REJECT does not interact well with BEGIN states. > > > > > > The BPF syntax in its current form really causes an ambigious > > > grammar. > > right, it looks like we allow whole path (including / char) > for BPF file, which messes up with out pmu/.../ syntax > > do we need that? (Cc-ed some bpf folks) > > if not attached patch seems to fix things.. otherwise > we need to come up with another fix
I tried similar patches, but I always ran into more complex situations where it still matched incorrectly.
e.g. try it with cpu/uops_executed.core,... vs uops_executed.core
The only real fix would be probably to add some unique prefix for BPF, but that would break all existing users.
-Andi
| |