[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v5 09/21] vhost-user: add a migration blocker
From: |
marcandre . lureau |
Subject: |
[Qemu-devel] [PATCH v5 09/21] vhost-user: add a migration blocker |
Date: |
Thu, 24 Sep 2015 18:22:09 +0200 |
From: Marc-André Lureau <address@hidden>
If VHOST_USER_PROTOCOL_F_LOG_SHMFD is not announced, block vhost-user
migration.
Signed-off-by: Marc-André Lureau <address@hidden>
---
hw/virtio/vhost-user.c | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/hw/virtio/vhost-user.c b/hw/virtio/vhost-user.c
index 6420efd..ff87e87 100644
--- a/hw/virtio/vhost-user.c
+++ b/hw/virtio/vhost-user.c
@@ -15,6 +15,7 @@
#include "qemu/error-report.h"
#include "qemu/sockets.h"
#include "exec/ram_addr.h"
+#include "migration/migration.h"
#include <fcntl.h>
#include <unistd.h>
@@ -442,6 +443,14 @@ static int vhost_user_init(struct vhost_dev *dev, void
*opaque)
}
}
+ if (!virtio_has_feature(dev->protocol_features,
+ VHOST_USER_PROTOCOL_F_LOG_SHMFD)) {
+ migrate_add_blocker(dev->migration_blocker);
+ error_setg(&dev->migration_blocker,
+ "Migration disabled: vhost-user backend lacks "
+ "VHOST_USER_PROTOCOL_F_LOG_SHMFD feature.");
+ }
+
return 0;
}
@@ -466,6 +475,10 @@ static int vhost_user_cleanup(struct vhost_dev *dev)
assert(dev->vhost_ops->backend_type == VHOST_BACKEND_TYPE_USER);
dev->opaque = 0;
+ if (dev->migration_blocker) {
+ migrate_del_blocker(dev->migration_blocker);
+ error_free(dev->migration_blocker);
+ }
return 0;
}
--
2.4.3
- [Qemu-devel] [PATCH v5 00/21] vhost-user: add migration support, marcandre . lureau, 2015/09/24
- [Qemu-devel] [PATCH v5 01/21] vhost-user: unit test for new messages, marcandre . lureau, 2015/09/24
- [Qemu-devel] [PATCH v5 02/21] configure: probe for memfd, marcandre . lureau, 2015/09/24
- [Qemu-devel] [PATCH v5 03/21] util: add linux-only memfd fallback, marcandre . lureau, 2015/09/24
- [Qemu-devel] [PATCH v5 04/21] util: add memfd helpers, marcandre . lureau, 2015/09/24
- [Qemu-devel] [PATCH v5 05/21] vhost: alloc shareable log, marcandre . lureau, 2015/09/24
- [Qemu-devel] [PATCH v5 06/21] vhost: document log resizing, marcandre . lureau, 2015/09/24
- [Qemu-devel] [PATCH v5 07/21] vhost: add vhost_set_log_base op, marcandre . lureau, 2015/09/24
- [Qemu-devel] [PATCH v5 09/21] vhost-user: add a migration blocker,
marcandre . lureau <=
- [Qemu-devel] [PATCH v5 08/21] vhost-user: send log shm fd along with log_base, marcandre . lureau, 2015/09/24
- [Qemu-devel] [PATCH v5 11/21] vhost: only use shared log if in use by backend, marcandre . lureau, 2015/09/24
- [Qemu-devel] [PATCH v5 12/21] vhost-user: document migration log, marcandre . lureau, 2015/09/24
- [Qemu-devel] [PATCH v5 13/21] net: add trace_vhost_user_event, marcandre . lureau, 2015/09/24
- [Qemu-devel] [PATCH v5 10/21] vhost: use a function for each call, marcandre . lureau, 2015/09/24
- [Qemu-devel] [PATCH v5 14/21] vhost user: add support of live migration, marcandre . lureau, 2015/09/24
- [Qemu-devel] [PATCH v5 16/21] vhost-user-test: move wait_for_fds() out, marcandre . lureau, 2015/09/24