[PATCH 2/4] perf vendor events arm64: AmpereOne: Mark affected STALL_* events impacted by errata

Ilkka Koskinen ilkka at os.amperecomputing.com
Thu Aug 10 15:38:50 PDT 2023



On Fri, 4 Aug 2023, Ilkka Koskinen wrote:
> On Fri, 4 Aug 2023, John Garry wrote:
>
>> On 03/08/2023 22:13, Ilkka Koskinen wrote:
>>> Per errata AC03_CPU_29, STALL_SLOT_FRONTEND, STALL_FRONTEND, and STALL
>>> events are not counting as expected. The follow up metrics patch will
>>> include correct way to calculate the impacted events.
>>> 
>>> Signed-off-by: Ilkka Koskinen <ilkka at os.amperecomputing.com>
>> 
>> Reviewed-by: John Garry <john.g.garry at oracle.com>
>> 
>>> ---
>>>   .../arch/arm64/ampere/ampereone/pipeline.json        | 12 +++++++++---
>>>   1 file changed, 9 insertions(+), 3 deletions(-)
>>> 
>>> diff --git 
>>> a/tools/perf/pmu-events/arch/arm64/ampere/ampereone/pipeline.json 
>>> b/tools/perf/pmu-events/arch/arm64/ampere/ampereone/pipeline.json
>>> index f9fae15f7555..711028377f3e 100644
>>> --- a/tools/perf/pmu-events/arch/arm64/ampere/ampereone/pipeline.json
>>> +++ b/tools/perf/pmu-events/arch/arm64/ampere/ampereone/pipeline.json
>>> @@ -1,18 +1,24 @@
>>>   [
>>>       {
>>> -        "ArchStdEvent": "STALL_FRONTEND"
>>> +        "ArchStdEvent": "STALL_FRONTEND",
>>> +        "Errata": "Errata AC03_CPU_29",
>>> +        "BriefDescription": "Impacted by errata, use metrics instead -"
>> 
>> why end with a '-'?
>
> That's a great question! I wish, I remembered why I did that. Looking at 
> other events with Errata field, they use '.'. I can fix those and submit the 
> patchset again.

John, I took a look at it and it seems that if I use '.', perf will remove 
it. Here are two examples:

metrics.json:
"BriefDescription": "Impacted by errata, use metrics instead."

# perf list
[Impacted by errata, use metrics instead Spec update: Errata AC03_CPU_29]

vs.

"BriefDescription": "Impacted by errata, use metrics instead -"

# perf list

Impacted by errata, use metrics instead - Spec update: Errata AC03_CPU_29

---

So, I believe, I probably used the hyphen to make the 'perf list' output a 
little "prettier". Well, I just change to dot and it's fine.

Cheers, Ilkka


>>
>>>       },
>>>       {
>>>           "ArchStdEvent": "STALL_BACKEND"
>>>       },
>>>       {
>>> -        "ArchStdEvent": "STALL"
>>> +        "ArchStdEvent": "STALL",
>>> +        "Errata": "Errata AC03_CPU_29",
>>> +        "BriefDescription": "Impacted by errata, use metrics instead -"
>>>       },
>>>       {
>>>           "ArchStdEvent": "STALL_SLOT_BACKEND"
>>>       },
>>>       {
>>> -        "ArchStdEvent": "STALL_SLOT_FRONTEND"
>>> +        "ArchStdEvent": "STALL_SLOT_FRONTEND",
>>> +        "Errata": "Errata AC03_CPU_29",
>>> +        "BriefDescription": "Impacted by errata, use metrics instead -"
>>>       },
>>>       {
>>>           "ArchStdEvent": "STALL_SLOT"
>> 
>> 
>



More information about the linux-arm-kernel mailing list