Re: [PATCHv2 2/2] perf tools: Fix term parsing for raw syntax

From: Jin, Yao
Date: Sun Jul 26 2020 - 20:26:03 EST




On 7/26/2020 3:52 PM, Jiri Olsa wrote:
Jin Yao reported issue with possible conflict between raw
events and term values in pmu event syntax.

Currently following syntax is resolved as raw event with
0xead value:
uncore_imc_free_running/read/

instead of using 'read' term from uncore_imc_free_running pmu,
because 'read' is correct raw event syntax with 0xead value.

To solve this issue we do following:
- check existing terms during rXXXX syntax processing
and make them priority in case of conflict
- allow pmu/r0x1234/ syntax to be able to specify conflicting
raw event (implemented in previous patch)

Also adding automated tests for this and perf_pmu__parse_cleanup
call to parse_events_terms, so the test gets properly cleaned up.

Reported-by: Jin Yao<yao.jin@xxxxxxxxxxxxxxx>
Signed-off-by: Jiri Olsa<jolsa@xxxxxxxxxx>
---
v2 changes:
- added comment to perf_pmu__test_parse_init

Acked-by: Jin Yao <yao.jin@xxxxxxxxxxxxxxx>

Thanks
Jin Yao