Hi Dave, On 18/02/2019 19:52, Dave Martin wrote: > To provide a uniform way to check for KVM SVE support amongst other > features, this patch adds a suitable capability KVM_CAP_ARM_SVE, > and reports it as present when SVE is available. > > Signed-off-by: Dave Martin <Dave.Martin at arm.com> > --- > arch/arm64/kvm/reset.c | 8 ++++++++ > include/uapi/linux/kvm.h | 1 + > 2 files changed, 9 insertions(+) > > diff --git a/arch/arm64/kvm/reset.c b/arch/arm64/kvm/reset.c > index e67cd2e..f636b34 100644 > --- a/arch/arm64/kvm/reset.c > +++ b/arch/arm64/kvm/reset.c > @@ -35,6 +35,7 @@ > #include <asm/kvm_asm.h> > #include <asm/kvm_coproc.h> > #include <asm/kvm_mmu.h> > +#include <asm/virt.h> > > /* Maximum phys_shift supported for any VM on this host */ > static u32 kvm_ipa_limit; > @@ -93,6 +94,9 @@ int kvm_arch_vm_ioctl_check_extension(struct kvm *kvm, long ext) > case KVM_CAP_ARM_VM_IPA_SIZE: > r = kvm_ipa_limit; > break; > + case KVM_CAP_ARM_SVE: > + r = system_supports_sve(); > + break; > default: > r = 0; > } > @@ -105,6 +109,10 @@ static int kvm_reset_sve(struct kvm_vcpu *vcpu) > if (!system_supports_sve()) > return -EINVAL; > > + /* Verify that KVM startup enforced this when SVE was detected: */ > + if (WARN_ON(!has_vhe())) > + return -EINVAL; I'm wondering, wouldn't it make more sense to check for this when userland tries to set KVM_ARM_VCPU_SVE? Otherwise: Reviewed-by: Julien Thierry <julien.thierry at arm.com> Cheers, -- Julien Thierry