Re: [RFC PATCH v6 03/35] KVM: arm64: Add CONFIG_KVM_ARM_SPE Kconfig option

James Clark
2026-01-09T16:29:52Z

On 14/11/2025 4:06 pm, Alexandru Elisei wrote:
> Add a new configuration option that will be used for KVM SPE emulation.
> CONFIG_KVM_ARM_SPE depends on the SPE driver being builtin because:
>
> 1. The SPE driver maintains a cpumask of physical CPUs that support SPE,
> and that will be used by KVM to emulate SPE on heterogeneous systems.
>
> 2. KVM will rely on the SPE driver enabling the SPE interrupt at the GIC
> level.
>
> Signed-off-by: Alexandru Elisei <alexandru.elisei@arm.com>
> ---
> arch/arm64/kvm/Kconfig | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/arch/arm64/kvm/Kconfig b/arch/arm64/kvm/Kconfig
> index 4f803fd1c99a..31388b5b2655 100644
> --- a/arch/arm64/kvm/Kconfig
> +++ b/arch/arm64/kvm/Kconfig
> @@ -83,4 +83,12 @@ config PTDUMP_STAGE2_DEBUGFS
>
> If in doubt, say N.
>
> +config KVM_ARM_SPE
> + bool
> + depends on KVM && ARM_SPE_PMU=y

I think the most common configuration is module, so requiring built-in
isn't great. If there's any way of avoiding it, even if it costs a
little bit of pain, it would be good for adoption.

It was basically the first thing I got stuck on trying to get it to
work. Or if it really can't be done, maybe some kind of debug message to
say why enabling failed.

> + default n
> + help
> + Adds support for Statistical Profiling Extension (SPE) in virtual
> + machines.
> +
> endif # VIRTUALIZATION