[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 58/65] migration: Disable hotplug/unplug during migra
From: |
Juan Quintela |
Subject: |
[Qemu-devel] [PULL 58/65] migration: Disable hotplug/unplug during migration |
Date: |
Fri, 21 Apr 2017 13:56:39 +0200 |
Until we have reviewed what can/can't be hotplugged during migration,
disable it. We can enable it later for the things that we know that
work. For instance, memory hotplug during postcopy doesn't work
currently.
Signed-off-by: Juan Quintela <address@hidden>
Reviewed-by: zhanghailiang <address@hidden>
--
- Fix typo. Thanks Thomas.
- Delay migration check after we have checked that we can hotplug that
device.
- more typos
---
qdev-monitor.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/qdev-monitor.c b/qdev-monitor.c
index bb3d8ba..e61d596 100644
--- a/qdev-monitor.c
+++ b/qdev-monitor.c
@@ -29,6 +29,7 @@
#include "qemu/error-report.h"
#include "qemu/help_option.h"
#include "sysemu/block-backend.h"
+#include "migration/migration.h"
/*
* Aliases were a bad idea from the start. Let's keep them
@@ -603,6 +604,11 @@ DeviceState *qdev_device_add(QemuOpts *opts, Error **errp)
return NULL;
}
+ if (!migration_is_idle()) {
+ error_setg(errp, "device_add not allowed while migrating");
+ return NULL;
+ }
+
/* create device */
dev = DEVICE(object_new(driver));
@@ -853,6 +859,11 @@ void qdev_unplug(DeviceState *dev, Error **errp)
return;
}
+ if (!migration_is_idle()) {
+ error_setg(errp, "device_del not allowed while migrating");
+ return;
+ }
+
qdev_hot_removed = true;
hotplug_ctrl = qdev_get_hotplug_handler(dev);
--
2.9.3
- [Qemu-devel] [PULL 48/65] ram: Use page number instead of an address for the bitmap operations, (continued)
- [Qemu-devel] [PULL 48/65] ram: Use page number instead of an address for the bitmap operations, Juan Quintela, 2017/04/21
- [Qemu-devel] [PULL 49/65] ram: Remember last_page instead of last_offset, Juan Quintela, 2017/04/21
- [Qemu-devel] [PULL 50/65] ram: Change offset field in PageSearchStatus to page, Juan Quintela, 2017/04/21
- [Qemu-devel] [PULL 52/65] ram: rename last_ram_offset() last_ram_pages(), Juan Quintela, 2017/04/21
- [Qemu-devel] [PULL 54/65] migration: Remove MigrationState parameter from migration_is_idle(), Juan Quintela, 2017/04/21
- [Qemu-devel] [PULL 51/65] ram: Use ramblock and page offset instead of absolute offset, Juan Quintela, 2017/04/21
- [Qemu-devel] [PULL 53/65] ram: Use RAMBitmap type for coherence, Juan Quintela, 2017/04/21
- [Qemu-devel] [PULL 55/65] qdev: qdev_hotplug is really a bool, Juan Quintela, 2017/04/21
- [Qemu-devel] [PULL 56/65] qdev: Export qdev_hot_removed, Juan Quintela, 2017/04/21
- [Qemu-devel] [PULL 59/65] ram: Remove migration_bitmap_extend(), Juan Quintela, 2017/04/21
- [Qemu-devel] [PULL 58/65] migration: Disable hotplug/unplug during migration,
Juan Quintela <=
- [Qemu-devel] [PULL 57/65] qdev: Move qdev_unplug() to qdev-monitor.c, Juan Quintela, 2017/04/21
- [Qemu-devel] [PULL 60/65] migration: don't close a file descriptor while it can be in use, Juan Quintela, 2017/04/21
- [Qemu-devel] [PULL 61/65] virtio-rng: stop virtqueue while the CPU is stopped, Juan Quintela, 2017/04/21
- [Qemu-devel] [PULL 62/65] migration: set current_active_state once, Juan Quintela, 2017/04/21
- [Qemu-devel] [PULL 65/65] hmp: info migrate_parameters format tunes, Juan Quintela, 2017/04/21
- [Qemu-devel] [PULL 64/65] hmp: info migrate_capability format tunes, Juan Quintela, 2017/04/21
- [Qemu-devel] [PULL 63/65] migration: rename max_size to threshold_size, Juan Quintela, 2017/04/21
- Re: [Qemu-devel] [PULL 00/65] Migration pull request, Peter Maydell, 2017/04/21