While looking trhough the snapshot code I've noticed a few bugs:
- memleak in cleanup code of migration to file (1/9)
- wrong place where 'manual' external disk snapshot is taken (2/9)
- bad interaction between 'manual' snapshot and the _QUIESCE flag (3/9)
- constants for save image types not exposed (6/9)
- use of wrong 'flags' in migration to file code (8/9)
The series contains also few cleanups and improvements:
- bash completion for save image type (7/9)
- use of proper types for save image type (4,5/9)
- avoid problems with 'flags' in qemuMigrationParamsForSave (9/9)
Part 2 will focus on some code cleanups.
Peter Krempa (9):
qemuMigrationSrcToFile: Don't leak 'qemuFDPass' in cleanup path
qemu: snapshot: Setup disks for manual snapshot only when the VM is
actually paused
qemuSnapshotPrepare: Prohibit 'manual' disk snapshot mode with
VIR_DOMAIN_SNAPSHOT_CREATE_QUIESCE flag
qemu: Use 'virQEMUSaveFormat' type everywhere except qemu_conf
qemu: conf: Use proper type for (save|dump|snapshot)ImageFormat
include: Create constants for save image format values
virsh: Add completer for '--image-format' option of 'save' command
qemuMigrationSrcToFile: Don't cross-contaminate 'flags' variable
qemuMigrationParamsForSave: Don't take opaque 'flags'
include/libvirt/libvirt-domain.h | 87 ++++++++++++++++++++++++++++++--
src/qemu/qemu_conf.c | 48 ++++++++++++------
src/qemu/qemu_conf.h | 7 +--
src/qemu/qemu_driver.c | 29 +++++++----
src/qemu/qemu_migration.c | 14 ++---
src/qemu/qemu_migration.h | 2 +-
src/qemu/qemu_migration_params.c | 4 +-
src/qemu/qemu_migration_params.h | 2 +-
src/qemu/qemu_saveimage.c | 22 ++++----
src/qemu/qemu_saveimage.h | 24 ++-------
src/qemu/qemu_saveimage_format.h | 25 +++++++++
src/qemu/qemu_snapshot.c | 14 +++--
tools/virsh-domain.c | 21 ++++++++
13 files changed, 224 insertions(+), 75 deletions(-)
create mode 100644 src/qemu/qemu_saveimage_format.h
--
2.52.0