Re: [PATCH v3]: perf record: enable arbitrary event names thru name= modifier
From: Alexey Budankov
Date: Mon Jun 04 2018 - 10:19:21 EST
Hi,
On 04.06.2018 16:58, Arnaldo Carvalho de Melo wrote:
> Em Mon, Jun 04, 2018 at 09:56:02AM +0200, Jiri Olsa escreveu:
>> On Mon, Jun 04, 2018 at 09:50:56AM +0300, Alexey Budankov wrote:
>>> Enable complex event names containing [.:=,] symbols to be encoded into Perf
>>> trace using name= modifier e.g. like this:
>
>>> perf record -e cpu/name=\'OFFCORE_RESPONSE:request=DEMAND_RFO:response=L3_HIT.SNOOP_HITM\',\
>>> period=0x3567e0,event=0x3c,cmask=0x1/Duk ./futex
>
>>> Below is how it looks like in the report output. Please note explicit escaped
>>> quoting at cmdline string in the header so that thestring can be directly reused
>>> for another collection in shell:
>
> Applied, but there are other places where we show event names, such as:
>
> [root@jouet ~]# perf record -e cpu/name=\'OFFCORE_RESPONSE:request=DEMAND_RFO:response=L3_HIT.SNOOP_HITM\',period=0x3567e0,event=0x3c,cmask=0x1/Duk
> ^C[ perf record: Woken up 1 times to write data ]
> [ perf record: Captured and wrote 1.599 MB perf.data (704 samples) ]
>
> [root@jouet ~]# perf evlist
> OFFCORE_RESPONSE:request=DEMAND_RFO:response=L3_HIT.SNOOP_HITM
> [root@jouet ~]# perf evlist -v
> OFFCORE_RESPONSE:request=DEMAND_RFO:response=L3_HIT.SNOOP_HITM: type: 4, size: 112, config: 0x100003c, { sample_period, sample_freq }: 3500000, sample_type: IP|TID|TIME|CPU, disabled: 1, inherit: 1, pinned: 1, exclude_hv: 1, mmap: 1, comm: 1, task: 1, sample_id_all: 1, mmap2: 1, comm_exec: 1
> [root@jouet ~]#
>
> That I used to check if the period, etc were correctly set, etc. Perhaps
> we should add that \'\' there as well?
Like this?
name: 'OFFCORE_RESPONSE:request=DEMAND_RFO:response=L3_HIT.SNOOP_HITM', type: 4, size: 112, config: 0x100003c, { sample_period, sample_freq }: 3500000, sample_type: IP|TID|TIME|CPU, disabled: 1, inherit: 1, pinned: 1, exclude_hv: 1, mmap: 1, comm: 1, task: 1, sample_id_all: 1, mmap2: 1, comm_exec: 1
Thanks,
Alexey
>
> Also please consider adding an entry to tools/perf/tests/attr/ to make
> sure this is checked everytime we run 'perf test attr' or plain 'perf
> test'.
>
> Those can be followup patches, so I'm applying this one, thanks.
>
> - Arnaldo
>