Re: [PATCH v3 0/5] vhost-user-blk: fix compatibility with older qemu versions

Alexandr Moshkov <[email protected]> Mon, 4 May 2026 11:56:07 +0500
Newsgroups dev.linux.lists.virtio-fs,org.nongnu.qemu-devel
Message-ID <[email protected]>
Ping :)

On 4/20/26 16:11, Alexandr Moshkov wrote:
> Hello! Another gentle ping :)
>
> On 4/6/26 14:51, Alexandr Moshkov wrote:
>> Ping :)
>>
>> On 3/30/26 14:52, Alexandr Moshkov wrote:
>>> v2 -> v3:
>>> - fix complile problems
>>> - add assert check in do_vhost_virtio_stop
>>> - make inflight-migration property mutable
>>>
>>> v1 -> v2:
>>> - reorganize commits: make refactor commits first, then core 
>>> semantic change
>>> - add additional pre_save check for inflight migration possibility
>>>
>>> ---
>>>
>>> This is a small continuation of my series about inflight migration 
>>> for vhost-user-blk.
>>>
>>> This series is designed to solve the problem of compatibility with 
>>> older versions of qemu, where this feature has not yet been 
>>> introduced (for example, if we want to downgrade versions due to 
>>> some problems).
>>>
>>> In the current version for vhost-user-blk, this feature is enabled 
>>> using the parameter and further migration of the inflight region 
>>> will depend on whether the vhost-user has accepted the new protocol 
>>> feature or not. This creates an inconvenient dependency, because 
>>> there is no way to disable this feature without reconnecting to the 
>>> backend.
>>> This series slightly changes the semantics of the introduced 
>>> protocol feature VHOST_USER_PROTOCOL_F_GET_VRING_BASE_INFLIGHT. 
>>> Enabling this feature adds a new parameter for GET_VRING_BASE 
>>> message - skip_drain, which allows to control drain in-flight 
>>> requests on the backend.
>>>
>>> Thus, user can enable or disable inflight-migration param for 
>>> vhost-user-blk to maintain compatibility with older versions of QEMU.
>>>
>>> Alexandr Moshkov (5):
>>>    vhost-user.rst: fix typo
>>>    vhost-user-blk: make inflight-migration prop mutable
>>>    vhost-user: add skip_drain param to do_vhost_virtqueue_stop
>>>    vhost-user-blk: move inflight_needed higher
>>>    vhost-user: add skip_drain param to GET_VRING_BASE
>>>
>>>   backends/cryptodev-vhost.c     |  2 +-
>>>   backends/vhost-user.c          |  2 +-
>>>   docs/interop/vhost-user.rst    |  8 +++----
>>>   hw/block/vhost-user-blk.c      | 43 
>>> +++++++++++++++++++++++++++-------
>>>   hw/net/vhost_net.c             |  9 +++----
>>>   hw/scsi/vhost-scsi-common.c    |  2 +-
>>>   hw/virtio/vdpa-dev.c           |  2 +-
>>>   hw/virtio/vhost-user-base.c    |  2 +-
>>>   hw/virtio/vhost-user-fs.c      |  2 +-
>>>   hw/virtio/vhost-user-scmi.c    |  2 +-
>>>   hw/virtio/vhost-user.c         |  3 +--
>>>   hw/virtio/vhost-vsock-common.c |  2 +-
>>>   hw/virtio/vhost.c              | 29 ++++++++++++++++-------
>>>   include/hw/virtio/vhost-user.h |  1 -
>>>   include/hw/virtio/vhost.h      |  7 ++++--
>>>   15 files changed, 76 insertions(+), 40 deletions(-)
>>>