Re: [PATCH v3] KVM: arm64: Only emulate an SError's entry for vCPUs with NV

From: Oliver Upton

Date: Wed Oct 07 2026 - 07:25:21 EST


On Wed, Oct 07, 2026 at 09:08:33AM +0100, Fuad Tabba wrote:
> kvm_inject_serror_esr() emulates an SError's exception entry when the
> host's copy of PSTATE says SErrors are unmasked, although only NV needs
> this, for a nested context whose guest hypervisor owns the vSError. A
> protected vCPU's PSTATE lives at EL2, and the VMM can unmask SErrors in
> the host's copy before the first run, so KVM emulates the entry on that
> copy and the guest never takes the SError.
>
> Emulate the entry only for a vCPU with NV, which protected VMs don't
> support, and otherwise pend the SError through HCR_EL2.VSE, as KVM did
> before commit ce66109cec867 ("KVM: arm64: nv: Take "masked" aborts to
> EL2 when HCRX_EL2.TMEA is set").
>
> Fixes: 872383bd12e11 ("KVM: arm64: Add per-EC entry/exit state marshalling for protected guests")
> Reported-by: Sashiko <sashiko-bot@xxxxxxxxxx>
> Closes: https://lore.kernel.org/all/20261001142109.794CA1F000FF@xxxxxxxxxxxxxxx/
> Suggested-by: Oliver Upton <oupton@xxxxxxxxxx>
> Signed-off-by: Fuad Tabba <fuad.tabba@xxxxxxxxx>

Reviewed-by: Oliver Upton <oupton@xxxxxxxxxx>

Thanks,
Oliver