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

John Garry john.g.garry at oracle.com
Tue Jul 25 02:41:02 PDT 2023


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?

> 

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

> Signed-off-by: Jing Zhang <renyu.zj at linux.alibaba.com>
> ---
>   tools/perf/pmu-events/jevents.py | 22 ++++++++++++++--------
>   1 file changed, 14 insertions(+), 8 deletions(-)
> 
> diff --git a/tools/perf/pmu-events/jevents.py b/tools/perf/pmu-events/jevents.py
> index 2bcd07c..79c3cfa 100755
> --- a/tools/perf/pmu-events/jevents.py
> +++ b/tools/perf/pmu-events/jevents.py
> @@ -259,12 +259,6 @@ class JsonEvent:
>         }
>         return table[unit] if unit in table else f'uncore_{unit.lower()}'




More information about the linux-arm-kernel mailing list