Add support for running a block-copy with -blockdev. This requires us to
format our own images, so this series also adds support for
blockdev-create which allows to do such a thing with qemu directly.
blockdev-create will also be used with snapshots.
Peter Krempa (12):
qemu: domain: Allow formatting top source only in
qemuDomainObjPrivateXMLFormatBlockjobFormatChain
qemu: Fix logic in
qemuDomainBlockCopyCommonValidateUserMirrorBackingStore
qemu: fix broken handling of shallow flag in qemuDomainBlockCopyCommon
util: storage: Refactor logic for using
virStorageFileGetBackendForSupportCheck
util: storage: Allow checking whether virStorageFileCreate is
supported
qemu: blockjob: Remove qemuBlockJobDiskRegisterMirror
qemu: domain: Add 'break' after formatting commit job status XML
conf: domain: Parse backingStore with VIR_DOMAIN_DEF_PARSE_DISK_SOURCE
qemu: blockjob: Copy non-detected chain fully in
qemuBlockJobRewriteConfigDiskSource
qemu: Introduce code for blockdev-create
qemu: Add blockdev support for the block copy job
qemu: driver: allow remote destinations for block copy
src/conf/domain_conf.c | 6 +-
src/libvirt_private.syms | 1 +
src/qemu/qemu_block.c | 250 ++++++++++++++++++
src/qemu/qemu_block.h | 14 +
src/qemu/qemu_blockjob.c | 202 ++++++++++++--
src/qemu/qemu_blockjob.h | 37 ++-
src/qemu/qemu_domain.c | 83 ++++--
src/qemu/qemu_driver.c | 184 +++++++++----
src/util/virstoragefile.c | 59 +++--
src/util/virstoragefile.h | 1 +
.../blockjob-blockdev-in.xml | 59 +++++
11 files changed, 786 insertions(+), 110 deletions(-)
--
2.21.0