From: "Wangnan (F)" <wangnan0@huawei.com>
To: Jiri Olsa <jolsa@redhat.com>
Cc: <acme@kernel.org>, <masami.hiramatsu.pt@hitachi.com>,
<jolsa@kernel.org>, <linux-kernel@vger.kernel.org>,
<pi3orama@163.com>, <lizefan@huawei.com>,
"He Kuang" <hekuang@huawei.com>,
Alexei Starovoitov <ast@kernel.org>,
"Arnaldo Carvalho de Melo" <acme@redhat.com>,
Namhyung Kim <namhyung@kernel.org>
Subject: Re: [PATCH v5 08/14] perf tools: Support perf event alias name
Date: Wed, 16 Dec 2015 09:50:24 +0800 [thread overview]
Message-ID: <5670C360.5030809@huawei.com> (raw)
In-Reply-To: <20151215131834.GB31734@krava.brq.redhat.com>
On 2015/12/15 21:18, Jiri Olsa wrote:
> On Mon, Dec 14, 2015 at 10:39:17AM +0000, Wang Nan wrote:
>> From: He Kuang <hekuang@huawei.com>
>>
>> This patch is useful when trying to pass a perf event to BPF map.
>> Before this patch we are unable to pass an event with config term to
>> BPF maps. For example:
>>
>> # perf record -a -e cycles/no-inherit,period=0x7fffffffffffffff/ \
>> -e './test_bpf_map_2.c/maps:pmu_map.event=cycles/no-inherit,period=0x7fffffffffffffff//' ls /
>> event syntax error: '..ps:pmu_map.event=cycles/'
>> \___ Event not found for map setting
>>
>> Because those '/' and ',' embarrass parser.
> we already have 'name=' term, but it's only for pmu events,
> so I think your solution is better
Thanks.
>
>> This patch adds new bison rules for specifying an alias name to a perf
>> event, which allows cmdline refer to previous defined perf event through
>> its name. With this patch user can give alias name to a perf event using
>> following cmdline. The above goal can be achieved using:
>>
>> # perf record -a -e cyc=cycles/no-inherit,period=0x7fffffffffffffff/ \
>> -e './test_bpf_map_2.c/maps:pmu_map.event=cyc/' ls /
>>
> so this alias should only help as a quick pointer
> to setup the record session, right?
Yes.
> I'm not sure we want to see it as a part of name being stored
> to perf.data and displayed by perf report and stat
>
> $ ./perf stat -e cyc=cycles ls
>
> Performance counter stats for 'ls':
>
> 2,638,646 cyc=cycles
>
> 0.001111614 seconds time elapsed
>
> but I guess when you probably have a reason to use that
> you want to see it in your report.. just a thought ;-)
I thought about this problem. It seems useful. In following patches we will
support BPF output. Thinking about this case:
# perf record -a -i -e a=bpf-output -e b=bpf-output \
-e mybpf.c/dataA=a,dataB=b/ ...
Here we pass two bpf-output events to the BPF script, they have different
meaning. For example, 'a' reports instructions costed by one function, 'b'
reports time between two events. We use CTF python binding to deal with
this report. Then aliases is a indicator to tell us which event is for what.
Without them we have to put some magic number in output data.
Thank you.
> anyway acking the change
>
> Acked-by: Jiri Olsa <jolsa@kernel.org>
>
> thanks,
> jirka
next prev parent reply other threads:[~2015-12-16 1:51 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-14 10:39 [PATCH v5 00/14] perf tools: BPF related update and other improvements Wang Nan
2015-12-14 10:39 ` [PATCH v5 01/14] perf tests: Fix incorrect free and false TEST_OK result Wang Nan
2015-12-14 10:39 ` [PATCH v5 02/14] perf tools: Prevent calling machine__delete() on non-allocated machine Wang Nan
2015-12-15 12:36 ` Jiri Olsa
2015-12-16 1:37 ` Wangnan (F)
2015-12-16 19:49 ` Arnaldo Carvalho de Melo
2015-12-14 10:39 ` [PATCH v5 03/14] perf test: Check environment before start real BPF test Wang Nan
2015-12-14 10:39 ` [PATCH v5 04/14] perf tools: Add API to config maps in bpf object Wang Nan
2015-12-14 10:39 ` [PATCH v5 05/14] perf tools: Enable BPF object configure syntax Wang Nan
2015-12-15 13:12 ` Jiri Olsa
2015-12-14 10:39 ` [PATCH v5 06/14] perf record: Apply config to BPF objects before recording Wang Nan
2015-12-14 10:39 ` [PATCH v5 07/14] perf tools: Enable passing event to BPF object Wang Nan
2015-12-14 10:39 ` [PATCH v5 08/14] perf tools: Support perf event alias name Wang Nan
2015-12-15 13:18 ` Jiri Olsa
2015-12-16 1:50 ` Wangnan (F) [this message]
2015-12-14 10:39 ` [PATCH v5 09/14] perf tools: Support setting different slots in a BPF map separately Wang Nan
2015-12-14 10:39 ` [PATCH v5 10/14] perf tools: Enable indices setting syntax for BPF maps Wang Nan
2015-12-15 13:42 ` Jiri Olsa
2015-12-16 2:02 ` Wangnan (F)
2015-12-16 7:55 ` Jiri Olsa
2015-12-16 11:24 ` Jiri Olsa
2015-12-14 10:39 ` [PATCH v5 11/14] perf tools: Introduce bpf-output event Wang Nan
2015-12-14 10:39 ` [PATCH v5 12/14] perf data: Support converting data from bpf_perf_event_output() Wang Nan
2015-12-16 11:29 ` Jiri Olsa
2015-12-14 10:39 ` [PATCH v5 13/14] perf tools: Always give options even it not compiled Wang Nan
2015-12-14 16:00 ` Arnaldo Carvalho de Melo
2015-12-18 8:50 ` [tip:perf/core] perf tools: Make options always available, even if required libs not linked tip-bot for Wang Nan
2015-12-14 10:39 ` [PATCH v5 14/14] perf record: Support custom vmlinux path Wang Nan
2015-12-18 8:51 ` [tip:perf/core] " tip-bot for He Kuang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5670C360.5030809@huawei.com \
--to=wangnan0@huawei.com \
--cc=acme@kernel.org \
--cc=acme@redhat.com \
--cc=ast@kernel.org \
--cc=hekuang@huawei.com \
--cc=jolsa@kernel.org \
--cc=jolsa@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lizefan@huawei.com \
--cc=masami.hiramatsu.pt@hitachi.com \
--cc=namhyung@kernel.org \
--cc=pi3orama@163.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox