[PATCH v4 1/3] KVM: arm64: VM exit to userspace to handle SEA

Marc Zyngier maz at kernel.org
Mon Nov 3 14:22:04 PST 2025


On Mon, 03 Nov 2025 18:17:00 +0000,
Jose Marinho <jose.marinho at arm.com> wrote:
> 
> > +	/*
> > +	 * Exit to userspace, and provide faulting guest virtual and physical
> > +	 * addresses in case userspace wants to emulate SEA to guest by
> > +	 * writing to FAR_ELx and HPFAR_ELx registers.
> > +	 */
> > +	memset(&run->arm_sea, 0, sizeof(run->arm_sea));
> > +	run->exit_reason = KVM_EXIT_ARM_SEA;
> > +	run->arm_sea.esr = esr & esr_mask;
> > +
> > +	if (!(esr & ESR_ELx_FnV))
> > +		run->arm_sea.gva = kvm_vcpu_get_hfar(vcpu) > +
> > +	ipa = kvm_vcpu_get_fault_ipa(vcpu);
> > +	if (ipa != INVALID_GPA) {
> > +		run->arm_sea.flags |= KVM_EXIT_ARM_SEA_FLAG_GPA_VALID;
> > +		run->arm_sea.gpa = ipa;
> 
> Are we interested in the value of PFAR_EL2 (if FEAT_PFAR implemented)?

We don't have any support for PFAR, and I don't think we have any plan
to support it in the near future. If anything, the rest of the kernel
should start by growing support for it before we start dragging it
into KVM.

	M.

-- 
Without deviation from the norm, progress is not possible.



More information about the linux-arm-kernel mailing list