[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v5 0/8] QMP wrappers for VM snapshot operations
From: |
Denis V. Lunev |
Subject: |
[Qemu-devel] [PATCH v5 0/8] QMP wrappers for VM snapshot operations |
Date: |
Thu, 14 Jan 2016 14:28:53 +0300 |
EFI based VM with pflash storage for NVRAM could not be snapshoted as
libvirt configures storage as 'raw' and writable. OK, this is a libvirt
problem.
Another problem is that libvirt can not detect this failure at all
as it uses HMP for this operation. This create snapshot/delete snapshot
sequence passes silently.
The patchset adds QMP wrappers for the purpose and specifically changes
behavior of the savevm/loadvm:
- savevm now allows optional argument to allow to specify block device
to save VM state to
- loadvm locate block device which really contains VM state
Eric, Marcus, I don't want to merge addition of the 'device' parameter
into patch 5. The present patch split looks better to me.
Signed-off-by: "Denis V. Lunev" <address@hidden>
CC: Juan Quintela <address@hidden>
CC: Amit Shah <address@hidden>
CC: Markus Armbruster <address@hidden>
CC: Eric Blake <address@hidden>
CC: Kevin Wolf <address@hidden>
Changes from v4:
- patches allows to save VM state to arbitrary BDS added
Changes from v3:
- wrong patch 1 is replaced
Changes from v2:
- patches 1/2 are resplit to move processing HMP specific handling
of snapshot name generation to exclusive HMP code
- removed all '.' at the end of error_setg strings
- fixed too long lines with '-' in qmp-commands.hx
- error_setg_errno errno passing is fixed (-ret)
- fixed logical error in hmp_loadvm (vm_start on error)
- NOT switched to error_prepend code (it is not yet merged). Can we do this
later? This will make my life easear merging code to our downstream.
Changes from v1:
- cosmetic fixes suggested by Markus. I pray I have added all of them
- patch 5 is rewritten completely. Original one was deadbeaf
Denis V. Lunev (8):
migration: split hmp_savevm to migrate_savevm and hmp_savevm wrapper
qmp: create qmp_savevm command
qmp: create qmp_delvm command
migration: improve error reporting for load_vmstate
qmp: create QMP implementation of loadvm command
migration, block: better select BDS for VM state loading
migration, qmp: add optional argument to specify BDS to save VM state
to
block: allow to skip block driver in selection of one for VM state
saving
block.c | 7 +++
block/snapshot.c | 111 ++++++++++++++++++++++++++++++++++++++-
hmp.c | 36 +++++++++++++
include/block/block_int.h | 3 ++
include/block/snapshot.h | 3 +-
include/migration/migration.h | 1 +
include/sysemu/sysemu.h | 2 +-
migration/savevm.c | 118 ++++++++++++++++--------------------------
monitor.c | 9 ++--
qapi-schema.json | 40 ++++++++++++++
qmp-commands.hx | 73 ++++++++++++++++++++++++++
vl.c | 4 +-
12 files changed, 325 insertions(+), 82 deletions(-)
--
2.5.0
- [Qemu-devel] [PATCH v5 0/8] QMP wrappers for VM snapshot operations,
Denis V. Lunev <=
- [Qemu-devel] [PATCH 5/8] qmp: create QMP implementation of loadvm command, Denis V. Lunev, 2016/01/14
- [Qemu-devel] [PATCH 4/8] migration: improve error reporting for load_vmstate, Denis V. Lunev, 2016/01/14
- [Qemu-devel] [PATCH 1/8] migration: split hmp_savevm to migrate_savevm and hmp_savevm wrapper, Denis V. Lunev, 2016/01/14
- [Qemu-devel] [PATCH 3/8] qmp: create qmp_delvm command, Denis V. Lunev, 2016/01/14
- [Qemu-devel] [PATCH 8/8] block: allow to skip block driver in selection of one for VM state saving, Denis V. Lunev, 2016/01/14
- [Qemu-devel] [PATCH 2/8] qmp: create qmp_savevm command, Denis V. Lunev, 2016/01/14