This patch series convert the savevm command into qapi and introduce QMP command vm-snapshot-save. It also rewrite error report for functions used by this command.
The patch 10/11 introduce new functionality of savevm and vm-snapshot-save that you cannot override existing snapshot without using 'force' parameter. The last patch improves speed of savevm. Previous buffer was too small for writing into block devices. Changes from v1: - rebase on current master branch - improve the speed of savevm - name parameter remains optionl for HMP and QMP Pavel Hrdina (12): block: add error parameter to bdrv_snapshot_create() and related functions block: add error parameter to del_existing_snapshots() savevm: add error parameter to qemu_savevm_state_begin() savevm: add error parameter to qemu_savevm_state_iterate() savevm: add error parameter to qemu_savevm_state_complete() savevm: add error parameter to qemu_savevm_state() qapi: Convert savevm qemu-img: introduce qemu_img_handle_error block: update return value from bdrv_snapshot_create savevm: update return value from qemu_savevm_state vm-snapshot-save: add force parameter savevm: icrease the IO_BUF_SIZE to improve the speed of savevm block.c | 26 +++++++++++----- block/qcow2-snapshot.c | 13 ++++++-- block/qcow2.h | 4 ++- block/rbd.c | 16 ++++++---- block/sheepdog.c | 21 ++++++------- hmp-commands.hx | 17 ++++++----- hmp.c | 10 +++++++ hmp.h | 1 + include/block/block.h | 3 +- include/block/block_int.h | 3 +- include/sysemu/sysemu.h | 8 ++--- migration.c | 6 ++-- qapi-schema.json | 21 +++++++++++++ qemu-img.c | 18 +++++++---- qmp-commands.hx | 33 ++++++++++++++++++++ savevm.c | 76 ++++++++++++++++++++++++++--------------------- 16 files changed, 192 insertions(+), 84 deletions(-) -- 1.8.1.4