This series adds a vcpu knob to request a specific PSCI version
from KVM via the KVM_REG_ARM_PSCI_VERSION FW register.
The use case for this is to support migration between host kernels
that differ in their default (a.k.a. most recent) PSCI version.
Note: in order to support PSCI v0.1 we need to drop vcpu
initialization with KVM_CAP_ARM_PSCI_0_2 in that case.
Alternatively we could limit support to versions >=0.2 .
Changes since V3 [3]:
* changed variable name as requested by Eric
* added R-B
Changes since V2 [2]:
* fix kvm_get_psci_version() when the prop is not specified - thanks Eric!
* removed the assertion in kvm_get_psci_version() so that this also works
with a future kernel/psci version
* added R-B
Changes since V1 [1]:
* incorporated feedback from Peter and Eric
[1] https://lore.kernel.org/kvmarm/20250911144923.24259-1-sebott@redhat.com/
[2] https://lore.kernel.org/kvmarm/20251030165905.73295-1-sebott@redhat.com/
[3] https://lore.kernel.org/kvmarm/20251112181357.38999-1-sebott@redhat.com/
Sebastian Ott (2):
target/arm/kvm: add constants for new PSCI versions
target/arm/kvm: add kvm-psci-version vcpu property
docs/system/arm/cpu-features.rst | 5 +++
target/arm/cpu.h | 6 +++
target/arm/kvm-consts.h | 2 +
target/arm/kvm.c | 64 +++++++++++++++++++++++++++++++-
4 files changed, 76 insertions(+), 1 deletion(-)
--
2.42.0