[libvirt] [PATCH v4 0/9] Rework storage migration

Michal Privoznik mprivozn at redhat.com
Thu Feb 21 13:39:17 UTC 2013


Since there are many hidden problems with auto-creating storage for the domain
in here, as previous rounds of reviewing the series has shown, I've decided to
not do anything about it for now and the auto allocation is dropped completely.
So we are back to the assumption we already have - users need to make sure files
already exists and have the right size. Hawk.

diff to v1:
-Eric's and Daniel's suggestions worked in. To point out the bigger ones:
 don't do NBD style when TUNNELLED requested, added 'b:writable' to
 'nbd-server-add'

-drop '/qemu-migration/nbd/disk/@src' attribute from migration cookie.
 As pointed out by Jirka, disk->src can be changed during migration (e.g. by
 migration hook or by passed xml). So I've tried (as suggested on the list)
 passing disk alias. However, since qemu hasn't been started on destination yet,
 the aliases hasn't been generated yet.  So we have to rely on ordering
 completely.

diff to v2:
-rebase to reflect changes made by offline migration patch
-send initial nbd cookie only if needed

diff to v2.1:
-nbd cookie reworked
-don't rely on disk ordering in the cookie, but use disk target for that
-adapt to virPortAllocator
-unlink pre-created storage on migration fail
-other of Jirka's suggestions worked in

"diff" to v3:
-just rebase & adapt to new qemu code after dropping QDL (Qemu Driver Lock)

diff to v4:
-drop storage auto-allocation
-include John's and Jirka's reviews

Note, that most of the patches has been ACKed already.


Michal Privoznik (9):
  qemu: Introduce NBD_SERVER capability
  Introduce NBD migration cookie
  qemu: Introduce nbd-server-start command
  qemu: Introduce nbd-server-add command
  qemu: Introduce nbd-server-stop command
  qemu_migration: Introduce qemuMigrationStartNBDServer()
  qemu_migration: Introduce qemuMigrationDriveMirror
  qemu_migration: Stop NBD server at Finish phase
  qemu_migration: Cancel running jobs on failed migration

 src/qemu/qemu_capabilities.c |   4 +-
 src/qemu/qemu_capabilities.h |   1 +
 src/qemu/qemu_domain.h       |   1 +
 src/qemu/qemu_migration.c    | 458 +++++++++++++++++++++++++++++++++++++++++--
 src/qemu/qemu_monitor.c      |  63 ++++++
 src/qemu/qemu_monitor.h      |   7 +
 src/qemu/qemu_monitor_json.c | 102 ++++++++++
 src/qemu/qemu_monitor_json.h |   7 +
 src/qemu/qemu_process.c      |   5 +
 9 files changed, 631 insertions(+), 17 deletions(-)

-- 
1.8.1.2




More information about the libvir-list mailing list