[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[RFC PATCH 02/27] vhost: Add device callback in vhost_migration_log
From: |
Eugenio Pérez |
Subject: |
[RFC PATCH 02/27] vhost: Add device callback in vhost_migration_log |
Date: |
Fri, 20 Nov 2020 19:50:40 +0100 |
This allows code to reuse the logic to not to re-enable or re-disable
migration mechanisms. Code works the same way as before.
Signed-off-by: Eugenio Pérez <eperezma@redhat.com>
---
hw/virtio/vhost.c | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/hw/virtio/vhost.c b/hw/virtio/vhost.c
index 2bd8cdf893..2adb2718c1 100644
--- a/hw/virtio/vhost.c
+++ b/hw/virtio/vhost.c
@@ -862,7 +862,9 @@ err_features:
return r;
}
-static int vhost_migration_log(MemoryListener *listener, bool enable)
+static int vhost_migration_log(MemoryListener *listener,
+ bool enable,
+ int (*device_cb)(struct vhost_dev *, bool))
{
struct vhost_dev *dev = container_of(listener, struct vhost_dev,
memory_listener);
@@ -877,14 +879,14 @@ static int vhost_migration_log(MemoryListener *listener,
bool enable)
r = 0;
if (!enable) {
- r = vhost_dev_set_log(dev, false);
+ r = device_cb(dev, false);
if (r < 0) {
goto check_dev_state;
}
vhost_log_put(dev, false);
} else {
vhost_dev_log_resize(dev, vhost_get_log_size(dev));
- r = vhost_dev_set_log(dev, true);
+ r = device_cb(dev, true);
if (r < 0) {
goto check_dev_state;
}
@@ -916,7 +918,7 @@ static void vhost_log_global_start(MemoryListener *listener)
{
int r;
- r = vhost_migration_log(listener, true);
+ r = vhost_migration_log(listener, true, vhost_dev_set_log);
if (r < 0) {
abort();
}
@@ -926,7 +928,7 @@ static void vhost_log_global_stop(MemoryListener *listener)
{
int r;
- r = vhost_migration_log(listener, false);
+ r = vhost_migration_log(listener, false, vhost_dev_set_log);
if (r < 0) {
abort();
}
--
2.18.4
- [RFC PATCH 00/27] vDPA software assisted live migration, Eugenio Pérez, 2020/11/20
- [RFC PATCH 01/27] vhost: Add vhost_dev_can_log, Eugenio Pérez, 2020/11/20
- [RFC PATCH 02/27] vhost: Add device callback in vhost_migration_log,
Eugenio Pérez <=
- [RFC PATCH 03/27] vhost: Move log resize/put to vhost_dev_set_log, Eugenio Pérez, 2020/11/20
- [RFC PATCH 04/27] vhost: add vhost_kernel_set_vring_enable, Eugenio Pérez, 2020/11/20
- [RFC PATCH 05/27] vhost: Add hdev->dev.sw_lm_vq_handler, Eugenio Pérez, 2020/11/20
- [RFC PATCH 06/27] virtio: Add virtio_queue_get_used_notify_split, Eugenio Pérez, 2020/11/20
- [RFC PATCH 07/27] vhost: Route guest->host notification through qemu, Eugenio Pérez, 2020/11/20
- [RFC PATCH 08/27] vhost: Add a flag for software assisted Live Migration, Eugenio Pérez, 2020/11/20
- [RFC PATCH 09/27] vhost: Route host->guest notification through qemu, Eugenio Pérez, 2020/11/20
- [RFC PATCH 10/27] vhost: Allocate shadow vring, Eugenio Pérez, 2020/11/20
- [RFC PATCH 11/27] virtio: const-ify all virtio_tswap* functions, Eugenio Pérez, 2020/11/20
- [RFC PATCH 12/27] virtio: Add virtio_queue_full, Eugenio Pérez, 2020/11/20