On 21.10.25 02:53, Raphael Norwitz wrote:
Overall looks ok. A couple comments

On Thu, Oct 16, 2025 at 7:49 AM Vladimir Sementsov-Ogievskiy
<[email protected]> wrote:

Opt-out backend initialization code, and instead get the state
from migration channel (including inflight region).

Signed-off-by: Vladimir Sementsov-Ogievskiy <[email protected]>
---
  hw/block/vhost-user-blk.c          | 129 ++++++++++++++++++++++++-----
  include/hw/virtio/vhost-user-blk.h |   2 +
  include/hw/virtio/vhost.h          |   3 +-
  3 files changed, 111 insertions(+), 23 deletions(-)

diff --git a/hw/block/vhost-user-blk.c b/hw/block/vhost-user-blk.c
index ffdd600526..a8fd90480a 100644
--- a/hw/block/vhost-user-blk.c
+++ b/hw/block/vhost-user-blk.c
@@ -17,6 +17,7 @@
   */

[..]

@@ -656,6 +680,64 @@ static const VMStateDescription vmstate_vhost_user_blk = {
      },
  };


Rename vhost_user_blk_needed()?

Yes, will fix


+static bool vhost_user_needed(void *opaque)
+{
+    return migrate_local_vhost_user_blk();
+}
+
+static const VMStateDescription vmstate_vhost_user_blk_device = {
+    .name = "vhost-user-blk-device",
+    .version_id = 1,
+    .needed = vhost_user_needed,
+    .fields = (const VMStateField[]) {
+        VMSTATE_BACKEND_TRANSFER_CHARDEV(chardev, VHostUserBlk),
+        VMSTATE_BACKEND_TRANSFER_VHOST_INFLIGHT(inflight, VHostUserBlk),
+        VMSTATE_BACKEND_TRANSFER_VHOST_USER(dev, VHostUserBlk),
+        VMSTATE_BACKEND_TRANSFER_VHOST(dev, VHostUserBlk),
+        VMSTATE_END_OF_LIST()
+    },
+};

[..]

diff --git a/include/hw/virtio/vhost-user-blk.h 
b/include/hw/virtio/vhost-user-blk.h
index a10f785672..b06f55fd6f 100644
--- a/include/hw/virtio/vhost-user-blk.h
+++ b/include/hw/virtio/vhost-user-blk.h
@@ -52,6 +52,8 @@ struct VHostUserBlk {
      bool started_vu;

      bool skip_get_vring_base_on_force_shutdown;

Why do we need incoming_backend? Looks like it is unused.


Oops right. Forget to delete, it was used in v1.


+
+    bool incoming_backend;
  };

  #endif


Thanks a lot for reviewing!

--
Best regards,
Vladimir

Reply via email to