Re: [PATCH v1 10/11] KVM: s390: Fix potential tiny kernel stack leak
From: Christian Borntraeger
Date: Tue Aug 11 2026 - 13:05:54 EST
Am 11.08.26 um 17:56 schrieb Claudio Imbrenda:
In some circumstances, one bit of kernel stack could have been leaked
from dat_cond_set_storage_key().
Fix by clearing prev before use.
Fixes: 8e03e8316eb2 ("KVM: s390: KVM page table management functions: storage keys")
Signed-off-by: Claudio Imbrenda <imbrenda@xxxxxxxxxxxxx>
---
arch/s390/kvm/dat.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/s390/kvm/dat.c b/arch/s390/kvm/dat.c
index 47ff8af1b22f..e2a74eb4d631 100644
--- a/arch/s390/kvm/dat.c
+++ b/arch/s390/kvm/dat.c
@@ -740,6 +740,7 @@ int dat_cond_set_storage_key(struct kvm_s390_mmu_cache *mmc, union asce asce, gf
pgste.fp = skey.fp;
pgste.gc = skey.c;
pgste.gr = skey.r;
+ prev.skey = 0;
if (!ptep->h.i) {
rc = page_cond_set_storage_key(pte_origin(*ptep), skey, &prev, nq, mr, mc);
in the declaration
- union skey prev;
+ union skey prev = {};
or
prev.zero=0 in the else
would have worked as well, but this way also works.
Reviewed-by: Christian Borntraeger <borntraeger@xxxxxxxxxxxxx>