Re: [PATCH v2 3/7] KVM: s390: Zero initialize irq in reinject_machine_check

Matthew Rosato <[email protected]> Tue, 4 Aug 2026 13:18:35 -0400
Newsgroups org.kernel.vger.kvm,org.kernel.vger.linux-s390
Message-ID <[email protected]>
On 8/4/26 12:24 PM, Christian Borntraeger wrote:
> kvm_s390_reinject_machine_check() fills cr14, mcic, ext_damage_code and
> failing_storage_address of the on-stack struct kvm_s390_irq, but struct
> kvm_s390_mchk_info also has a pad word and a 16 byte fixed_logout array.
> struct mcck_volatile_info carries no logout data, so there is nothing to
> copy there and both stay whatever was on the stack.
> 
> __inject_mchk() then memcpy()s fixed_logout into the vcpu local
> interrupt state unconditionally. This will reach the guest during
> deliver and userspace during migration.
> 
> Reflecting zeroes is the correct behaviour here, as KVM has no logout
> data for a reinjected machine check.
> 
> This needs a host machine check while the cpu is in SIE so not trivial
> to trigger.
> 
> Fixes: 4d62fcc0b692 ("KVM: s390: Inject machine check into the guest")
> Cc: [email protected]
> Signed-off-by: Christian Borntraeger <[email protected]>

Reviewed-by: Matthew Rosato <[email protected]>