mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-19 10:14:23 +08:00
1de1ea7efe
Some parts of the cmma migration bitmap is already protected
with the kvm->lock (e.g. the migration start). On the other
hand the read of the cmma bits is not protected against a
concurrent free, neither is the emulation of the ESSA instruction.
Let's extend the locking to all related ioctls by using
the slots lock for
- kvm_s390_vm_start_migration
- kvm_s390_vm_stop_migration
- kvm_s390_set_cmma_bits
- kvm_s390_get_cmma_bits
In addition to that, we use synchronize_srcu before freeing
the migration structure as all users hold kvm->srcu for read.
(e.g. the ESSA handler).
Reported-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Cc: stable@vger.kernel.org # 4.13+
Fixes:
|
||
---|---|---|
.. | ||
diag.c | ||
gaccess.c | ||
gaccess.h | ||
guestdbg.c | ||
intercept.c | ||
interrupt.c | ||
irq.h | ||
Kconfig | ||
kvm-s390.c | ||
kvm-s390.h | ||
Makefile | ||
priv.c | ||
sigp.c | ||
trace-s390.h | ||
trace.h | ||
vsie.c |