Re: [PATCH v2 1/6] KVM: SVM: Use maxphyaddr in emulator RAX check for VMRUN/VMLOAD/VMSAVE

From: Yosry Ahmed

Date: Wed Mar 11 2026 - 14:35:11 EST


On Fri, Mar 6, 2026 at 4:32 PM Sean Christopherson <seanjc@xxxxxxxxxx> wrote:
>
> On Fri, Mar 06, 2026, Yosry Ahmed wrote:
> > > > Right, but I am trying to have the #GP check for VMLOAD/VMSAVE behave
> > > > consistently with vls=1, whether it's done by the hardware or the
> > > > emulator.
> > >
> > > Consistency should not be an issue, since VLS cannot be enabled when
> > > the MAXPHYADDRs differ. VLS doesn't work in that scenario.
> >
> > Why? It's only broken if VMLOAD/VMSAVE is executed with a GPA that
> > exceeds the guest's MAXPHYADDR, but not the host's, right? So only
> > broken if the guest is misbehaving.
> >
> > Taking a step back, I am not disagreeing that VLS should not be used
> > with different MAXPHYADDRs, I am just saying it might be.
>
> KVM straight up doesn't support that (see my other reply).

Sean, I intend to send a new version today with 2 main diffs:
- Use cpuid_maxphyaddr() here instead of kvm_host.maxphyaddr.
- Use a common helper for checking RAX for SVM instructions for both
the emulator and gp_interception() (see response on patch 4).

Holler if you want me to wait for further feedback.