From: Oliver Upton Date: Wed, 20 Sep 2023 19:50:33 +0000 (+0000) Subject: KVM: arm64: Prevent NV feature flag on systems w/o nested virt X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=12405b09926f0270f7033ed5293241180ea57343;p=linux.git KVM: arm64: Prevent NV feature flag on systems w/o nested virt It would appear that userspace can select the NV feature flag regardless of whether the system actually supports the feature. Obviously a nested guest isn't getting far in this situation; let's reject the flag instead. Link: https://lore.kernel.org/r/20230920195036.1169791-6-oliver.upton@linux.dev Signed-off-by: Oliver Upton --- diff --git a/arch/arm64/kvm/arm.c b/arch/arm64/kvm/arm.c index ab866a7370a31..a791809fb1a10 100644 --- a/arch/arm64/kvm/arm.c +++ b/arch/arm64/kvm/arm.c @@ -1208,6 +1208,9 @@ static unsigned long system_supported_vcpu_features(void) clear_bit(KVM_ARM_VCPU_PTRAUTH_GENERIC, &features); } + if (!cpus_have_final_cap(ARM64_HAS_NESTED_VIRT)) + clear_bit(KVM_ARM_VCPU_HAS_EL2, &features); + return features; }