|
|
Log in / Subscribe / Register

Add queue ready message to VDUSE

From:  Eugenio Pérez <eperezma-AT-redhat.com>
To:  "Michael S . Tsirkin" <mst-AT-redhat.com>
Subject:  [PATCH 0/6] Add queue ready message to VDUSE
Date:  Wed, 28 Jan 2026 13:45:18 +0100
Message-ID:  <20260128124524.875271-1-eperezma@redhat.com>
Cc:  Jason Wang <jasowang-AT-redhat.com>, Xuan Zhuo <xuanzhuo-AT-linux.alibaba.com>, Cindy Lu <lulu-AT-redhat.com>, Laurent Vivier <lvivier-AT-redhat.com>, Stefano Garzarella <sgarzare-AT-redhat.com>, linux-kernel-AT-vger.kernel.org, Maxime Coquelin <mcoqueli-AT-redhat.com>, Yongji Xie <xieyongji-AT-bytedance.com>, Eugenio Pérez <eperezma-AT-redhat.com>, virtualization-AT-lists.linux.dev
Archive-link:  Article

This series introduces a new VDUSE message for VDUSE userland instance to
detect when a VirtQueue (VQ) is enabled, replacing the polling.

VirtIO net devices' dataplane is started after the control virtqueue so QEMU
can apply the configuration in the destination of a Live Migration. Without
this feature, the VDUSE instance must poll the VQs to check when (and if) a VQ
has been enabled.

This series also implements VDUSE feature flags allowing the VDUSE devices to
opt-in to the VQ ready message.  Devices that opt-in to this feature will
receive explicit notifications when a VQ is ready. Devices that do not set this
flag remain unaffected, ensuring backward compatibility without indefinitely
incrementing API versions.

The VDUSE features is a 64 bit bitmap for simplicity, the same way as vhost and
vhost-net started.  It can be extended as a flexible array of bits when we
reach so many features, but it seems unlikely at this point.

This series depends on
https://lore.kernel.org/lkml/20260119143306.1818855-1-epe...

Eugenio Pérez (6):
  vduse: ensure vq->ready access is smp safe
  vduse: store control device pointer
  vduse: Add API v2 definition
  vduse: add VDUSE_GET_FEATURES ioctl
  vduse: add F_QUEUE_READY feature
  vduse: advertise API V2 support

 drivers/vdpa/vdpa_user/vduse_dev.c | 100 +++++++++++++++++++++++++----
 include/uapi/linux/vduse.h         |  30 ++++++++-
 2 files changed, 115 insertions(+), 15 deletions(-)

-- 
2.52.0




Copyright © 2026, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds