qemu-devel
[Top][All Lists]
Advanced

[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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]