Another posting of this series as I've added a few patches which fix a problem with shallow block copy. Patches 1-5 of the original series were pushed. Patches 1-3 of this series were originally posted and reviewed separately but were not pushed yet due to the ongoing freeze. They are included as they make the snapshots actually usable. Patches 4-9 are new and fix a problem in block copy. The changes necessary would conflict with the snapshot code so this version rebases everything and includes them here. Patches 10-12 fix a snapshot locking regression as outlined in the previous posting. The rest is from the original external snapshot blockdevization series with feedback applied. Peter Krempa (18): qemu: block: Use correct type when creating image size JSON entries tests: qemublock: Use bigger numbers as dummy capacity/physical qemu: monitor: Fix formatting of 'offset' in qemuMonitorJSONSaveMemory qemu: block: Unify conditions to format backing store of format node definition qemu: block: Explicitly specify backingStore when creating format layer props qemu: command: Refactor qemuBuildStorageSourceChainAttachPrepareBlockdevInternal qemu: block: explicitly pass backing store to qemuBlockStorageSourceAttachPrepareBlockdev qemu: Explicitly pass backing store to qemuBuildStorageSourceChainAttachPrepareBlockdevTop qemu: driver: Fix shallow non-reuse block copy qemu: snapshot: Fix image lock handling when taking a snapshot qemu: snapshot: Save status and config XMLs only on success qemu: snapshot: Move error preservation to qemuDomainSnapshotDiskDataCleanup qemu: snapshot: Rename external disk snapshot handling functions qemu: Disband qemuDomainSnapshotCreateSingleDiskActive qemu: Merge use of 'reuse' flag in qemuDomainSnapshotDiskPrepareOne qemu: snapshot: Skip overlay file creation/interogation if unsupported qemu: Add -blockdev support for external snapshots qemu: Defer support checks for external active snapshots to blockdev code or qemu src/qemu/qemu_block.c | 54 ++-- src/qemu/qemu_block.h | 4 +- src/qemu/qemu_command.c | 63 ++-- src/qemu/qemu_command.h | 1 + src/qemu/qemu_driver.c | 279 +++++++++++------- src/qemu/qemu_migration.c | 4 +- src/qemu/qemu_monitor_json.c | 2 +- tests/qemublocktest.c | 6 +- .../imagecreate/luks-encopts.json | 4 +- .../imagecreate/luks-noopts.json | 4 +- .../imagecreate/network-gluster-qcow2.json | 4 +- .../imagecreate/network-rbd-qcow2.json | 4 +- .../imagecreate/network-sheepdog-qcow2.json | 4 +- .../imagecreate/network-ssh-qcow2.json | 4 +- .../imagecreate/qcow2-backing-luks.json | 4 +- .../imagecreate/qcow2-backing-raw-nbd.json | 4 +- .../imagecreate/qcow2-backing-raw.json | 4 +- .../qcow2-luks-encopts-backing.json | 4 +- .../imagecreate/qcow2-luks-encopts.json | 4 +- .../imagecreate/qcow2-luks-noopts.json | 4 +- .../qemublocktestdata/imagecreate/qcow2.json | 4 +- tests/qemublocktestdata/imagecreate/raw.json | 2 +- 22 files changed, 280 insertions(+), 187 deletions(-) -- 2.21.0 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list