[PATCH v4 23/36] KVM: arm64: Hide TCR2_EL1 from userspace when disabled for guests
Oliver Upton
oliver.upton at linux.dev
Thu Oct 10 00:50:53 PDT 2024
On Wed, Oct 09, 2024 at 08:00:06PM +0100, Marc Zyngier wrote:
> From: Mark Brown <broonie at kernel.org>
>
> When the guest does not support FEAT_TCR2 we should not allow any access
> to it in order to ensure that we do not create spurious issues with guest
> migration. Add a visibility operation for it.
This should come at the beginning of ths series (same for the subsequent
S1PIE patch) so the EL2 registers use the correct visibility filtering
from the start.
> Fixes: fbff56068232 ("KVM: arm64: Save/restore TCR2_EL1")
> Signed-off-by: Mark Brown <broonie at kernel.org>
> Link: https://lore.kernel.org/r/20240822-kvm-arm64-hide-pie-regs-v2-2-376624fa829c@kernel.org
> Signed-off-by: Marc Zyngier <maz at kernel.org>
> ---
> arch/arm64/include/asm/kvm_host.h | 3 +++
> arch/arm64/kvm/sys_regs.c | 29 ++++++++++++++++++++++++++---
> 2 files changed, 29 insertions(+), 3 deletions(-)
>
> diff --git a/arch/arm64/include/asm/kvm_host.h b/arch/arm64/include/asm/kvm_host.h
> index 1a5477181447c..197a7a08b3af5 100644
> --- a/arch/arm64/include/asm/kvm_host.h
> +++ b/arch/arm64/include/asm/kvm_host.h
> @@ -1511,4 +1511,7 @@ void kvm_set_vm_id_reg(struct kvm *kvm, u32 reg, u64 val);
> (system_supports_fpmr() && \
> kvm_has_feat((k), ID_AA64PFR2_EL1, FPMR, IMP))
>
> +#define kvm_has_tcr2(k) \
> + (kvm_has_feat((k), ID_AA64MMFR3_EL1, TCRX, IMP))
> +
nit: we should consistently use this predicate if we want to keep it.
--
Thanks,
Oliver
More information about the linux-arm-kernel
mailing list