History | View | Annotate | Download (10 kB)
block: Fix how mirror_run() frees its buffer
It allocates with qemu_blockalign(), therefore it must free withqemu_vfree(), not g_free().
Signed-off-by: Markus Armbruster <armbru@redhat.com>Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
block: move include files to include/block/
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
aio: Get rid of qemu_aio_flush()
There are no remaining users, and new users should probably beusing bdrv_drain_all() in the first place.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
mirror: implement completion
Switching to the target of the migration is done mostly asynchronously,and reported to management via the BLOCK_JOB_COMPLETED event; the onlysynchronous phase is opening the backing files. bdrv_open_backing_filecan always be done, even for migration of the full image (aka sync:...
mirror: add support for on-source-error/on-target-error
Error management is important for mirroring; otherwise, an error on thetarget (even something as "innocent" as ENOSPC) requires to start againwith a full copy. Similar to on_read_error/on_write_error, two separate...
mirror: introduce mirror job
This patch adds the implementation of a new job that mirrors a disk toa new image while letting the guest continue using the old image.The target is treated as a "black box" and data is copied from thesource to the target in the background. This can be used for several...