Re: [PATCH v4 2/4] perf jevents: Support more event fields

From: Jing Zhang
Date: Wed Jul 26 2023 - 02:40:23 EST




在 2023/7/25 下午5:41, John Garry 写道:
> On 23/07/2023 09:21, Jing Zhang wrote:
>> The usual event descriptions are "event=xxx" or "config=xxx", while the
>> event descriptions of CMN are "type=xxx, eventid=xxx" or more complex.
>>
>> $cat /sys/bus/event_source/devices/arm_cmn_0/events/hnf_cache_fill
>> type=0x5,eventid=0x3
>>
>> When adding aliases for events described as "event=xxx" or "config=xxx",
>> EventCode or ConfigCode can be used in the JSON files to describe the
>> events. But "eventid=xxx, type=xxx" cannot be supported at present.
>>
>> If EventCode and ConfigCode is not added in the alias JSON file, the
>> event description will add "event=0" by default. So, even if the event
>> field is added to supplement "eventid=xxx" and "type=xxx", the final
>> parsing result will be "event=0, eventid=xxx, type=xxx".
>>
>> Therefore, when EventCode and ConfigCode are missing in JSON, "event=0" is
>> no longer added by default. EventidCode and Type are added to the event
>> field, and ConfigCode is moved into the event field.
>
> What does "ConfigCode is moved into the event field" mean?
>

What I want to express is to move "ConfigCode" into the event_filed array which can also guarantee its original function. like this:
event_fields = [
...
('AnyThread', 'any='),
('PortMask', 'ch_mask='),
('ConfigCode', 'config='),
...
]

Haha, my English language proficiency still needs improvement, please forgive me.

>>
>
> There should be perf tool self-tests cases for this, see tests/pmu-events.c and tests/parse-events.c, like "umask" is tested
>

Ok, will do.


Thanks,
Jing