mbox series

[v3,0/7] perf arm-spe: Refactor data source encoding

Message ID 20241003185322.192357-1-leo.yan@arm.com (mailing list archive)
Headers show
Series perf arm-spe: Refactor data source encoding | expand

Message

Leo Yan Oct. 3, 2024, 6:53 p.m. UTC
As more Arm CPU variants (not only Neoverse CPUs) support data source
encoding, they share the same format for the data source packet.

To extend supporting these CPU variants for Arm SPE data source, this
series refactors the code. It converts the Neoverse specific naming to
the common naming, and then based on the MIDR stored in the metadata to
decide if the CPU follows up the common encoding format.

At the last, it extends CPU list for Neoverse-V2 and Cortex CPUs.

This patch series is dependent on the metadata version 2 series [1] for
retrieving CPU MIDR. It has been verified for per CPU mode and per
thread mode on Cortex-A725 CPUs.

[1] https://lore.kernel.org/linux-perf-users/20241003184302.190806-1-leo.yan@arm.com/T/#t

Changes from v2:
- Rebased on the latest metadata version 2 series [1].

Changes from v1:
- Dropped LDS bit checking in data source parsing.


Besar Wicaksono (1):
  perf arm-spe: Add Neoverse-V2 to common data source encoding list

Leo Yan (6):
  perf arm-spe: Rename arm_spe__synth_data_source_generic()
  perf arm-spe: Rename the common data source encoding
  perf arm-spe: Introduce arm_spe__is_homogeneous()
  perf arm-spe: Use metadata to decide the data source feature
  perf arm-spe: Remove the unused 'midr' field
  perf arm-spe: Add Cortex CPUs to common data source encoding list

 .../util/arm-spe-decoder/arm-spe-decoder.h    |  18 +--
 tools/perf/util/arm-spe.c                     | 135 +++++++++++++++---
 2 files changed, 121 insertions(+), 32 deletions(-)

Comments

James Clark Oct. 10, 2024, 1:54 p.m. UTC | #1
On 03/10/2024 7:53 pm, Leo Yan wrote:
> As more Arm CPU variants (not only Neoverse CPUs) support data source
> encoding, they share the same format for the data source packet.
> 
> To extend supporting these CPU variants for Arm SPE data source, this
> series refactors the code. It converts the Neoverse specific naming to
> the common naming, and then based on the MIDR stored in the metadata to
> decide if the CPU follows up the common encoding format.
> 
> At the last, it extends CPU list for Neoverse-V2 and Cortex CPUs.
> 
> This patch series is dependent on the metadata version 2 series [1] for
> retrieving CPU MIDR. It has been verified for per CPU mode and per
> thread mode on Cortex-A725 CPUs.
> 
> [1] https://lore.kernel.org/linux-perf-users/20241003184302.190806-1-leo.yan@arm.com/T/#t
> 
> Changes from v2:
> - Rebased on the latest metadata version 2 series [1].
> 
> Changes from v1:
> - Dropped LDS bit checking in data source parsing.
> 
> 
> Besar Wicaksono (1):
>    perf arm-spe: Add Neoverse-V2 to common data source encoding list
> 
> Leo Yan (6):
>    perf arm-spe: Rename arm_spe__synth_data_source_generic()
>    perf arm-spe: Rename the common data source encoding
>    perf arm-spe: Introduce arm_spe__is_homogeneous()
>    perf arm-spe: Use metadata to decide the data source feature
>    perf arm-spe: Remove the unused 'midr' field
>    perf arm-spe: Add Cortex CPUs to common data source encoding list
> 
>   .../util/arm-spe-decoder/arm-spe-decoder.h    |  18 +--
>   tools/perf/util/arm-spe.c                     | 135 +++++++++++++++---
>   2 files changed, 121 insertions(+), 32 deletions(-)
> 

Reviewed-by: James Clark <james.clark@linaro.org>
Namhyung Kim Oct. 16, 2024, 5:12 p.m. UTC | #2
On Thu, 03 Oct 2024 19:53:15 +0100, Leo Yan wrote:

> As more Arm CPU variants (not only Neoverse CPUs) support data source
> encoding, they share the same format for the data source packet.
> 
> To extend supporting these CPU variants for Arm SPE data source, this
> series refactors the code. It converts the Neoverse specific naming to
> the common naming, and then based on the MIDR stored in the metadata to
> decide if the CPU follows up the common encoding format.
> 
> [...]

Applied to perf-tools-next, thanks!

Best regards,
Namhyung