lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5d8fc047-1535-5308-91b5-577d8ead1d28@huawei.com>
Date:   Thu, 12 Oct 2017 23:31:51 +0800
From:   "Wangnan (F)" <wangnan0@...wei.com>
To:     Jiri Olsa <jolsa@...hat.com>,
        Arnaldo Carvalho de Melo <acme@...nel.org>
CC:     Andi Kleen <andi@...stfloor.org>, Jiri Olsa <jolsa@...nel.org>,
        <linux-kernel@...r.kernel.org>, Andi Kleen <ak@...ux.intel.com>,
        He Kuang <hekuang@...wei.com>, Alexei Starovoitov <ast@...com>
Subject: Re: [PATCH 2/2] perf, tools: Don't force MetricExprs to lower case



On 2017/10/9 22:39, Jiri Olsa wrote:
> On Mon, Oct 09, 2017 at 11:12:58AM -0300, Arnaldo Carvalho de Melo wrote:
>> Em Mon, Oct 09, 2017 at 07:07:29AM -0700, Andi Kleen escreveu:
>>> On Mon, Oct 09, 2017 at 03:41:51PM +0200, Jiri Olsa wrote:
>>>> On Wed, Oct 04, 2017 at 09:27:11AM -0700, Andi Kleen wrote:
>>>>> 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@...ux.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
>>>> hm, both works for me with the change:
>>>>
>>>>    perf stat -e cpu/uops_executed.core/ ls
>>>>    perf stat -e uops_executed.core ls
>>> Ok. If it works it's fine for me.
> well it works, but it means that bpf file cannot contains any directory
> part.. which im not sure is ok with bpf folks ;-) anyone?

Sorry I didn't see this thread these days.

Do you think adding a special escape character to suppress BPF
name parsing in a event is a good idea? for example:

% 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. Add a leading '@' to avoid 
BPF syntax

% perf stat -e @cpu/uops_executed.core,cmask=1/ true
...

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ