]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
KVM: s390: vsie: Avoid potential deadlock with real spaces
authorClaudio Imbrenda <imbrenda@linux.ibm.com>
Thu, 2 Jul 2026 15:23:59 +0000 (17:23 +0200)
committerChristian Borntraeger <borntraeger@linux.ibm.com>
Thu, 9 Jul 2026 08:26:10 +0000 (10:26 +0200)
commit866d03de6def89c386cdfd457b28a1f566e02565
tree2d668ec30c90ab4630b1fe64654cbbe5d06eb864
parent7b69729046a4c58f4cb457184e5ac4aaa179bff4
KVM: s390: vsie: Avoid potential deadlock with real spaces

The natural lock ordering is mmu_lock -> children_lock, but in
gmap_create_shadow() the reverse order is used when handling shadowing
of real address spaces.

Convert the inner locking of kvm->mmu_lock to a trylock; return -EAGAIN
if the lock is busy, and let the caller try again.

This path is not expected to happen in real-life scenarios, so its
performance is not important.

Fixes: a2c17f9270cc ("KVM: s390: New gmap code")
Signed-off-by: Claudio Imbrenda <imbrenda@linux.ibm.com>
Reviewed-by: Christian Borntraeger <borntraeger@linux.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@linux.ibm.com>
arch/s390/kvm/gmap.c