]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
KVM: arm64: Set IL for nested SError injection
authorFuad Tabba <tabba@google.com>
Thu, 18 Jun 2026 12:16:42 +0000 (13:16 +0100)
committerMarc Zyngier <maz@kernel.org>
Mon, 22 Jun 2026 09:44:08 +0000 (10:44 +0100)
kvm_inject_nested_serror() constructs an SError syndrome without IL.
The architecture mandates IL=1 for SError unconditionally.

Fixes: 77ee70a07357 ("KVM: arm64: nv: Honor SError exception routing / masking")
Signed-off-by: Fuad Tabba <tabba@google.com>
Link: https://patch.msgid.link/20260618121643.4105064-7-tabba@google.com
Signed-off-by: Marc Zyngier <maz@kernel.org>
arch/arm64/kvm/emulate-nested.c

index a15b2f41a12c81bcbd81844ed8cb0bce2fe15f9c..3c82f392845d14a607622f41e1e8207563d0320b 100644 (file)
@@ -2967,6 +2967,6 @@ int kvm_inject_nested_serror(struct kvm_vcpu *vcpu, u64 esr)
         * vSError injection. Manually populate EC for an emulated SError
         * exception.
         */
-       esr |= FIELD_PREP(ESR_ELx_EC_MASK, ESR_ELx_EC_SERROR);
+       esr |= FIELD_PREP(ESR_ELx_EC_MASK, ESR_ELx_EC_SERROR) | ESR_ELx_IL;
        return kvm_inject_nested(vcpu, esr, except_type_serror);
 }