Patchwork [1/9] vmstate: add no_migrate flag to VMStateDescription

login
register
mail settings
Submitter Gerd Hoffmann
Date July 20, 2011, 10:09 a.m.
Message ID <1311156579-9814-2-git-send-email-kraxel@redhat.com>
Download mbox | patch
Permalink /patch/105662/
State New
Headers show

Comments

Gerd Hoffmann - July 20, 2011, 10:09 a.m.
This allows to easily tag devices as non-migratable,
so any attempt to migrate a virtual machine with the
device in question active will make migration fail.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 hw/hw.h  |    1 +
 savevm.c |    1 +
 2 files changed, 2 insertions(+), 0 deletions(-)

Patch

diff --git a/hw/hw.h b/hw/hw.h
index 9dd7096..df6ca65 100644
--- a/hw/hw.h
+++ b/hw/hw.h
@@ -324,6 +324,7 @@  typedef struct VMStateSubsection {
 
 struct VMStateDescription {
     const char *name;
+    int unmigratable;
     int version_id;
     int minimum_version_id;
     int minimum_version_id_old;
diff --git a/savevm.c b/savevm.c
index 8139bc7..1c5abe2 100644
--- a/savevm.c
+++ b/savevm.c
@@ -1234,6 +1234,7 @@  int vmstate_register_with_alias_id(DeviceState *dev, int instance_id,
     se->opaque = opaque;
     se->vmsd = vmsd;
     se->alias_id = alias_id;
+    se->no_migrate = vmsd->unmigratable;
 
     if (dev && dev->parent_bus && dev->parent_bus->info->get_dev_path) {
         char *id = dev->parent_bus->info->get_dev_path(dev);