Message ID | 20230920195036.1169791-1-oliver.upton@linux.dev (mailing list archive) |
---|---|
Headers | show |
Series | KVM: arm64: Cleanup + fix to vCPU reset, feature flags | expand |
On Wed, 20 Sep 2023 20:50:28 +0100, Oliver Upton <oliver.upton@linux.dev> wrote: > > The way we do vCPU feature flag checks is a bit of a scattered mess > between the KVM_ARM_VCPU_INIT ioctl handler and kvm_reset_vcpu(). Let's > move all the feature flag checks up into the ioctl() handler to > eliminate failure paths from kvm_reset_vcpu(), as other usage of this > function no not handle returned errors. > > Nobody screamed about the VM-wide feature flag change, so its also a > good time to rip out the vestiges of the vCPU-scoped bitmap. > > I also spotted a bug with the NV feature flag where we allow it > regardless of system support. Thanks for going the extra mile refactoring this stuff. Apart from the const/final nit, this looks good to me. It'd be good to have this in -next shortly. Reviewed-by: Marc Zyngier <maz@kernel.org> M.
On Wed, 20 Sep 2023 19:50:28 +0000, Oliver Upton wrote: > The way we do vCPU feature flag checks is a bit of a scattered mess > between the KVM_ARM_VCPU_INIT ioctl handler and kvm_reset_vcpu(). Let's > move all the feature flag checks up into the ioctl() handler to > eliminate failure paths from kvm_reset_vcpu(), as other usage of this > function no not handle returned errors. > > Nobody screamed about the VM-wide feature flag change, so its also a > good time to rip out the vestiges of the vCPU-scoped bitmap. > > [...] Applied to kvmarm/next, with the change to use cpus_have_final_cap() per Marc's suggestion. [1/8] KVM: arm64: Add generic check for system-supported vCPU features https://git.kernel.org/kvmarm/kvmarm/c/ef150908b6bd [2/8] KVM: arm64: Hoist PMUv3 check into KVM_ARM_VCPU_INIT ioctl handler https://git.kernel.org/kvmarm/kvmarm/c/9116db11feb5 [3/8] KVM: arm64: Hoist SVE check into KVM_ARM_VCPU_INIT ioctl handler https://git.kernel.org/kvmarm/kvmarm/c/be9c0c018389 [4/8] KVM: arm64: Hoist PAuth checks into KVM_ARM_VCPU_INIT ioctl https://git.kernel.org/kvmarm/kvmarm/c/baa28a53ddbe [5/8] KVM: arm64: Prevent NV feature flag on systems w/o nested virt https://git.kernel.org/kvmarm/kvmarm/c/12405b09926f [6/8] KVM: arm64: Hoist NV+SVE check into KVM_ARM_VCPU_INIT ioctl handler https://git.kernel.org/kvmarm/kvmarm/c/d99fb82fd35e [7/8] KVM: arm64: Remove unused return value from kvm_reset_vcpu() https://git.kernel.org/kvmarm/kvmarm/c/3d4b2a4cddd7 [8/8] KVM: arm64: Get rid of vCPU-scoped feature bitmap https://git.kernel.org/kvmarm/kvmarm/c/1de10b7d13a9 -- Best, Oliver