On 27/10/2015 15:09, Denis V. Lunev wrote: > The following test > while /bin/true ; do > virsh snapshot-create rhel7 > sleep 10 > virsh snapshot-delete rhel7 --current > done > with enabled iothreads on a running VM leads to a lot of troubles: hangs, > asserts, errors. > > Though (in general) HMP snapshot code is terrible. I think it should be > dropped at once and replaced with blkdev transactions code. Though is > could not fit to QEMU 2.5/stable at all. > > Anyway, I think that the construction like > assert(aio_context_is_locked(aio_context)); > should be widely used to ensure proper locking. > > Changes from v1: > - aio-context locking added > - comment is rewritten > > Signed-off-by: Denis V. Lunev <d...@openvz.org> > CC: Stefan Hajnoczi <stefa...@redhat.com> > CC: Paolo Bonzini <pbonz...@redhat.com>
For patches 4-5: Reviewed-by: Paolo Bonzini <pbonz...@redhat.com> For patches 1-3 I'm not sure, because we will remove RFifoLock relatively soon and regular pthread recursive mutexes do not have an equivalent of rfifolock_is_locked. Paolo