On 09/06/2016 09:35, Stefan Hajnoczi wrote: > > if (s->dataplane) { > virtio_blk_data_plane_stop(s->dataplane); > } > > virtio_save(vdev, f); > } > > We reach the situation I described where BDS AioContext changes but > mirror_run() is still in the IOThread AioContext.
Why is the virtio_blk_data_plane_stop necessary? It used to sync between vring and virtio state, but that's not required anymore---and we know that the virtqueues are quiescent at this point... Paolo