[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 0/4] dataplane: virtio-blk live migration with x-
From: |
Stefan Hajnoczi |
Subject: |
[Qemu-devel] [PATCH v3 0/4] dataplane: virtio-blk live migration with x-data-plane=on |
Date: |
Mon, 29 Jul 2013 15:01:56 +0200 |
v3:
* Fix spice migration, also needed for dataplane migration [kwolf]
v2:
* Rebase onto qemu.git/master
* Split bdrv_in_use() into separate patch, it's a bug fix [bonzini]
These patches add live migration support to -device
virtio-blk-pci,x-data-plane=on.
Patches 1 & 2 make migration state notifiers reliable and fix spice migration.
Dataplane migration faces the same issues so I'm including the patches here.
Patch 3 implements a switch from dataplane mode back to regular virtio-blk mode
when migration starts. This way live migration works.
Patch 4 is a bug fix: we need to check the device is not in use when creating
the dataplane thread. It applies to live migration but it turns out the same
problem can be hit without migration too, see the commit description.
If migration is cancelled or the guest accesses the virtio-blk device after
completion, dataplane starts again.
Since this approach is so small, it's more palatable for QEMU 1.6 than trying
to make vring.c log dirty memory. It makes dataplane usable in situations
where live migration is a requirement.
Stefan Hajnoczi (4):
migration: notify migration state before starting thread
migration: fix spice migration
dataplane: enable virtio-blk x-data-plane=on live migration
dataplane: refuse to start if device is already in use
hw/block/dataplane/virtio-blk.c | 17 ++++++++---------
hw/block/virtio-blk.c | 32 ++++++++++++++++++++++++++++++++
include/hw/virtio/virtio-blk.h | 1 +
include/migration/migration.h | 2 +-
migration.c | 8 +++++---
ui/spice-core.c | 2 +-
6 files changed, 48 insertions(+), 14 deletions(-)
--
1.8.1.4