[PATCH v2 0/3] KVM: arm64: Read PMUVer as unsigned

James Clark posted 3 patches 1 month ago
arch/arm/include/asm/arm_pmuv3.h |  7 +++++++
arch/arm64/kernel/cpufeature.c   | 16 ++++------------
arch/arm64/kvm/debug.c           |  5 ++++-
3 files changed, 15 insertions(+), 13 deletions(-)
[PATCH v2 0/3] KVM: arm64: Read PMUVer as unsigned
Posted by James Clark 1 month ago
Fix some issues with the signedness of PMUVer and PerfMon ID fields.

I ran into the first issue when testing "ARM64 PMU Partitioning" patches
on the FVP. The second issue was only found by inspection.

Signed-off-by: James Clark <james.clark@linaro.org>
---
Changes in v2:
- Handle ID_AA64DFR0_EL1_PMUVer_IMP_DEF correctly by using
  pmuv3_implemented()
- Fix another issue with incorrect sign in cpufeature.c
- Add a commit to refactor has_pmuv3() to use pmuv3_implemented() for
  consistency
- Link to v1: https://lore.kernel.org/r/20260305-james-kvm-pmuver-sign-v1-1-eea0a2116dd0@linaro.org

---
James Clark (3):
      KVM: arm64: Read PMUVer as unsigned
      arm64: cpufeature: Make PMUVer and PerfMon unsigned
      arm64: cpufeature: Use pmuv3_implemented() function

 arch/arm/include/asm/arm_pmuv3.h |  7 +++++++
 arch/arm64/kernel/cpufeature.c   | 16 ++++------------
 arch/arm64/kvm/debug.c           |  5 ++++-
 3 files changed, 15 insertions(+), 13 deletions(-)
---
base-commit: 11439c4635edd669ae435eec308f4ab8a0804808
change-id: 20260305-james-kvm-pmuver-sign-fe830bdead2d

Best regards,
-- 
James Clark <james.clark@linaro.org>
Re: [PATCH v2 0/3] KVM: arm64: Read PMUVer as unsigned
Posted by Will Deacon 2 weeks, 2 days ago
On Thu, 05 Mar 2026 16:28:16 +0000, James Clark wrote:
> Fix some issues with the signedness of PMUVer and PerfMon ID fields.
> 
> I ran into the first issue when testing "ARM64 PMU Partitioning" patches
> on the FVP. The second issue was only found by inspection.
> 
> 

Applied to will (for-next/perf), thanks!

[1/3] KVM: arm64: Read PMUVer as unsigned
      https://git.kernel.org/will/c/2e30447b233a
[2/3] arm64: cpufeature: Make PMUVer and PerfMon unsigned
      https://git.kernel.org/will/c/d1dcc20bcc40
[3/3] arm64: cpufeature: Use pmuv3_implemented() function
      https://git.kernel.org/will/c/15ed3fa23cbc

Cheers,
-- 
Will

https://fixes.arm64.dev
https://next.arm64.dev
https://will.arm64.dev
Re: [PATCH v2 0/3] KVM: arm64: Read PMUVer as unsigned
Posted by Marc Zyngier 3 weeks ago
On Thu, 05 Mar 2026 16:28:16 +0000,
James Clark <james.clark@linaro.org> wrote:
> 
> Fix some issues with the signedness of PMUVer and PerfMon ID fields.
> 
> I ran into the first issue when testing "ARM64 PMU Partitioning" patches
> on the FVP. The second issue was only found by inspection.
> 
> Signed-off-by: James Clark <james.clark@linaro.org>
> ---
> Changes in v2:
> - Handle ID_AA64DFR0_EL1_PMUVer_IMP_DEF correctly by using
>   pmuv3_implemented()
> - Fix another issue with incorrect sign in cpufeature.c
> - Add a commit to refactor has_pmuv3() to use pmuv3_implemented() for
>   consistency
> - Link to v1: https://lore.kernel.org/r/20260305-james-kvm-pmuver-sign-v1-1-eea0a2116dd0@linaro.org
> 
> ---
> James Clark (3):
>       KVM: arm64: Read PMUVer as unsigned
>       arm64: cpufeature: Make PMUVer and PerfMon unsigned
>       arm64: cpufeature: Use pmuv3_implemented() function
> 
>  arch/arm/include/asm/arm_pmuv3.h |  7 +++++++
>  arch/arm64/kernel/cpufeature.c   | 16 ++++------------
>  arch/arm64/kvm/debug.c           |  5 ++++-
>  3 files changed, 15 insertions(+), 13 deletions(-)

Given that this only tangentially affects KVM, it'd better be routed
via the arm64/perf tree.

With that in mind:

Reviewed-by: Marc Zyngier <maz@kernel.org>

Thanks,

	M.

-- 
Without deviation from the norm, progress is not possible.
Re: [PATCH v2 0/3] KVM: arm64: Read PMUVer as unsigned
Posted by Colton Lewis 3 weeks, 6 days ago
James Clark <james.clark@linaro.org> writes:

> Fix some issues with the signedness of PMUVer and PerfMon ID fields.

> I ran into the first issue when testing "ARM64 PMU Partitioning" patches
> on the FVP. The second issue was only found by inspection.

> Signed-off-by: James Clark <james.clark@linaro.org>
> ---
> Changes in v2:
> - Handle ID_AA64DFR0_EL1_PMUVer_IMP_DEF correctly by using
>    pmuv3_implemented()
> - Fix another issue with incorrect sign in cpufeature.c
> - Add a commit to refactor has_pmuv3() to use pmuv3_implemented() for
>    consistency
> - Link to v1:  
> https://lore.kernel.org/r/20260305-james-kvm-pmuver-sign-v1-1-eea0a2116dd0@linaro.org

> ---
> James Clark (3):
>        KVM: arm64: Read PMUVer as unsigned
>        arm64: cpufeature: Make PMUVer and PerfMon unsigned
>        arm64: cpufeature: Use pmuv3_implemented() function

>   arch/arm/include/asm/arm_pmuv3.h |  7 +++++++
>   arch/arm64/kernel/cpufeature.c   | 16 ++++------------
>   arch/arm64/kvm/debug.c           |  5 ++++-
>   3 files changed, 15 insertions(+), 13 deletions(-)
> ---
> base-commit: 11439c4635edd669ae435eec308f4ab8a0804808
> change-id: 20260305-james-kvm-pmuver-sign-fe830bdead2d

> Best regards,
> --
> James Clark <james.clark@linaro.org>

Thanks for testing my series James. Glad you caught this

Reviewed-by: Colton Lewis <coltonlewis@google.com>