[PATCH v3 04/26] KVM: arm64: nv: Add sanitising to EL2 configuration registers
Oliver Upton
oliver.upton at linux.dev
Wed Feb 7 02:40:08 PST 2024
On Mon, Feb 05, 2024 at 10:34:09AM +0000, Marc Zyngier wrote:
> + if (!(__vcpu_has_feature(&kvm->arch, KVM_ARM_VCPU_PTRAUTH_ADDRESS) &&
> + __vcpu_has_feature(&kvm->arch, KVM_ARM_VCPU_PTRAUTH_ADDRESS)))
> + res0 |= (HCR_API | HCR_APK);
I think what you probably meant here is _ADDRESS and _GENERIC, right? Of
course, this has no actual effect on the code, since we don't allow one
without the other.
Maybe we can just change KVM's representation to a single flag to avoid
this pointless exercise.
> + if (!kvm_has_feat(kvm, ID_AA64ISAR0_EL1, TME, IMP))
> + res0 |= BIT(39);
> + if (!kvm_has_feat(kvm, ID_AA64PFR0_EL1, RAS, IMP))
> + res0 |= (HCR_TEA | HCR_TERR);
> + if (!kvm_has_feat(kvm, ID_AA64MMFR1_EL1, LO, IMP))
> + res0 |= HCR_TLOR;
> + if (!kvm_has_feat(kvm, ID_AA64MMFR4_EL1, E2H0, IMP))
> + res1 |= HCR_E2H;
> + set_sysreg_masks(kvm, HCR_EL2, res0, res1);
> +
> out:
> mutex_unlock(&kvm->arch.config_lock);
>
> --
> 2.39.2
--
Thanks,
Oliver
More information about the linux-arm-kernel
mailing list