mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-03 15:53:54 -06:00
ivshmem: use migration blockers to prevent live migration in peer mode (v2)
Now when you try to migrate with ivshmem, you get a proper QMP error: (qemu) migrate tcp:localhost:1025 Migration is disabled when using feature 'peer mode' in device 'ivshmem' (qemu) Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
fa2756b71b
commit
38e0735eb7
4 changed files with 18 additions and 26 deletions
25
savevm.c
25
savevm.c
|
@ -1255,31 +1255,6 @@ void unregister_savevm(DeviceState *dev, const char *idstr, void *opaque)
|
|||
}
|
||||
}
|
||||
|
||||
/* mark a device as not to be migrated, that is the device should be
|
||||
unplugged before migration */
|
||||
void register_device_unmigratable(DeviceState *dev, const char *idstr,
|
||||
void *opaque)
|
||||
{
|
||||
SaveStateEntry *se;
|
||||
char id[256] = "";
|
||||
|
||||
if (dev && dev->parent_bus && dev->parent_bus->info->get_dev_path) {
|
||||
char *path = dev->parent_bus->info->get_dev_path(dev);
|
||||
if (path) {
|
||||
pstrcpy(id, sizeof(id), path);
|
||||
pstrcat(id, sizeof(id), "/");
|
||||
g_free(path);
|
||||
}
|
||||
}
|
||||
pstrcat(id, sizeof(id), idstr);
|
||||
|
||||
QTAILQ_FOREACH(se, &savevm_handlers, entry) {
|
||||
if (strcmp(se->idstr, id) == 0 && se->opaque == opaque) {
|
||||
se->no_migrate = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
int vmstate_register_with_alias_id(DeviceState *dev, int instance_id,
|
||||
const VMStateDescription *vmsd,
|
||||
void *opaque, int alias_id,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue