Paolo Bonzini <pbonz...@redhat.com> wrote: > This makes it possible to do blocking writes directly to the socket, > with no buffer in the middle. For RAM, only the migration_bitmap_sync() > call needs the iothread lock. For block migration, it is needed by > the block layer (including bdrv_drain_all and dirty bitmap access), > but because some code is shared between iterate and complete, all of > mig_save_device_dirty is run with the lock taken. > > In the savevm case, the iterate callback runs within the big lock. > This is annoying because it complicates the rules. Luckily we do not > need to do anything about it: the RAM iterate callback does not need > the iothread lock, and block migration never runs during savevm. > > Signed-off-by: Paolo Bonzini <pbonz...@redhat.com>
Reviewed-by: Juan Quintela <quint...@redhat.com>