Re: [RFC/PATCH 1/1] tools headers arm64: Sync arm64's cputype.h with the kernel sources

From: Leo Yan
Date: Thu Aug 08 2024 - 04:35:20 EST


Hi Besar,

On 8/8/24 05:37, Besar Wicaksono wrote:

[...]

Today, Arm Ltd implementations happen to share a format, but that isn't
implied by PMSIDR_EL1.LDS, and there's no guarantee that future CPUs
will all use the same format.

For the moment we'll have to keep adding to this list.

I apologize I didn't follow. Do you mean adding new CPU identifier to neoverse_spe[]
list is still the way to go for now?

Yes, the conclusion is we still need to maintain the CPU ID list for Arm SPE
data source packets.

I would like to use an opposite way - we can only maintain CPU variants with
special data source format, otherwise, all other CPUs use the common format.

I think that's not a good idea.

Today, Arm Ltd CPUs happen to share *a* common format, but that's likely
to change at some point in future, and CPUs from other vendors are
likely to use different formats.

Assuming any format by default means that when CPUs with different
formats are released, we'll produce incorrect results for those CPU by
default, we'll need to update tables to exclude those CPUs, and we'll
probably want to backport that exclusion to minimize the risk of users
getting incorrect/misleading results.

While the current situation isn't nice, I think the alternative is
worse -- it will confuse and anger users.

I think we need to talk with the Arm architects to see if they can
define some discovery mechanism for the data source format.

Is there a follow-up on this from Arm?

I am working on this. The plan is to add meta data support so we can have more
info about Arm SPE features (e.g. data source packet is supported). Then in
the perf tool we need to consolidate to support not only Neoverse core.

It is deferred as I need to firstly resolve the multiple Arm SPE devices, then
I will work on the meta data things and consolidate data source packet (and
include your patches [1]).

Thanks,
Leo

[1] https://lore.kernel.org/linux-perf-users/20240109192310.16234-1-bwicaksono@xxxxxxxxxx/