[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v4 16/18] savevm: check vmsd for migratability statu
From: |
Eduardo Habkost |
Subject: |
[Qemu-devel] [PATCH v4 16/18] savevm: check vmsd for migratability status |
Date: |
Wed, 30 Apr 2014 13:48:43 -0300 |
From: Marcelo Tosatti <address@hidden>
Check vmsd for unmigratable field, allowing migratibility status
to be modified after vmstate_register.
Cc: Juan Quintela <address@hidden>
Signed-off-by: Marcelo Tosatti <address@hidden>
Reviewed-by: Eduardo Habkost <address@hidden>
Signed-off-by: Eduardo Habkost <address@hidden>
---
savevm.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/savevm.c b/savevm.c
index da8aa24..c578e42 100644
--- a/savevm.c
+++ b/savevm.c
@@ -232,7 +232,6 @@ typedef struct SaveStateEntry {
const VMStateDescription *vmsd;
void *opaque;
CompatEntry *compat;
- int no_migrate;
int is_ram;
} SaveStateEntry;
@@ -292,7 +291,6 @@ int register_savevm_live(DeviceState *dev,
se->ops = ops;
se->opaque = opaque;
se->vmsd = NULL;
- se->no_migrate = 0;
/* if this is a live_savem then set is_ram */
if (ops->save_live_setup != NULL) {
se->is_ram = 1;
@@ -383,7 +381,6 @@ 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) {
char *id = qdev_get_dev_path(dev);
@@ -452,7 +449,7 @@ bool qemu_savevm_state_blocked(Error **errp)
SaveStateEntry *se;
QTAILQ_FOREACH(se, &savevm_handlers, entry) {
- if (se->no_migrate) {
+ if (se->vmsd && se->vmsd->unmigratable) {
error_setg(errp, "State blocked by non-migratable device '%s'",
se->idstr);
return true;
--
1.9.0
- [Qemu-devel] [PATCH v4 13/18] target-i386: Support "-cpu host" in TCG mode, (continued)
- [Qemu-devel] [PATCH v4 13/18] target-i386: Support "-cpu host" in TCG mode, Eduardo Habkost, 2014/04/30
- [Qemu-devel] [PATCH v4 17/18] target-i386: block migration and savevm if invariant tsc is exposed, Eduardo Habkost, 2014/04/30
- [Qemu-devel] [PATCH v4 06/18] target-i386: Make TCG feature filtering more readable, Eduardo Habkost, 2014/04/30
- [Qemu-devel] [PATCH v4 05/18] target-i386: Isolate KVM-specific code on CPU feature filtering logic, Eduardo Habkost, 2014/04/30
- [Qemu-devel] [PATCH v4 03/18] target-i386: Merge feature filtering/checking functions, Eduardo Habkost, 2014/04/30
- [Qemu-devel] [PATCH v4 08/18] target-i386: Filter KVM and 0xC0000001 features on TCG, Eduardo Habkost, 2014/04/30
- [Qemu-devel] [PATCH v4 02/18] target-i386: Simplify reporting of unavailable features, Eduardo Habkost, 2014/04/30
- [Qemu-devel] [PATCH v4 04/18] target-i386: Pass FeatureWord argument to report_unavailable_features(), Eduardo Habkost, 2014/04/30
- [Qemu-devel] [PATCH v4 07/18] target-i386: Filter FEAT_7_0_EBX TCG features too, Eduardo Habkost, 2014/04/30
- [Qemu-devel] [PATCH v4 14/18] target-i386: Add "migratable" property to "host" CPU model, Eduardo Habkost, 2014/04/30
- [Qemu-devel] [PATCH v4 16/18] savevm: check vmsd for migratability status,
Eduardo Habkost <=
- [Qemu-devel] [PATCH v4 18/18] target-i386: support "invariant tsc" flag, Eduardo Habkost, 2014/04/30
- [Qemu-devel] [PATCH v4 15/18] target-i386: Set migratable=yes by default, Eduardo Habkost, 2014/04/30
- [Qemu-devel] [PATCH v4 01/18] target-i386: kvm: Don't enable MONITOR by default on any CPU model, Eduardo Habkost, 2014/04/30