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

Alexandr Moshkov <[email protected]> Mon, 20 Apr 2026 16:11:02 +0500
Newsgroups dev.linux.lists.virtio-fs,org.nongnu.qemu-devel
Message-ID <[email protected]>
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(-)
>>