Re: [PATCH RFC 0/3] vdpa: dedicated descriptor table group

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


On 8/9/2023 8:50 PM, Jason Wang wrote:
On Wed, Aug 9, 2023 at 8:56 PM Si-Wei Liu <si-wei.liu@xxxxxxxxxx> wrote:
Following patchset introduces dedicated group for descriptor table to
reduce live migration downtime when passthrough VQ is being switched
to shadow VQ. As this RFC set is to seek early feedback on the uAPI
and driver API part, for now there's no associated driver patch consuming
the API. As soon as the support is in place on both hardware device and
driver, performance data will be show using real hardware device. The
target goal of this series is to reduce the SVQ switching overhead
to less than 300ms on a ~100GB guest with 2 non-mq vhost-vdpa devices.

The plan of the intended driver implementation is to use a dedicated
group (specifically, 2 in below table) to host descriptor table for
all data vqs, different from where buffer addresses are contained (in
group 0 as below). cvq does not have to allocate dedicated group for
descriptor table, so its buffers and descriptor table would always
belong to a same group (1).
I'm fine with this, but I think we need an implementation in the
driver (e.g the simulator).
Yes. FWIW for the sake of time saving and get this series accepted promptly in the upcoming v6.6 merge window, the driver we're going to support along with this series will be mlx5_vdpa in the formal submission, and simulator support may come up later after if I got spare cycle. Do you foresee any issue without simulator change? We will have mlx5_vdpa driver consuming the API for sure, that's the target of this work and it has to be proved working on real device at first.



               |  data vq | ctrl vq
vq_group      |    0     |    1
vq_desc_group |    2     |    1


Si-Wei Liu (3):
   vdpa: introduce dedicated descriptor group for virtqueue
   vhost-vdpa: introduce descriptor group backend feature
   vhost-vdpa: uAPI to get dedicated descriptor group id

  drivers/vhost/vdpa.c             | 27 +++++++++++++++++++++++++++
  include/linux/vdpa.h             | 11 +++++++++++
  include/uapi/linux/vhost.h       |  8 ++++++++
  include/uapi/linux/vhost_types.h |  5 +++++
  4 files changed, 51 insertions(+)


Virtualization mailing list

[Index of Archives]     [KVM Development]     [Libvirt Development]     [Libvirt Users]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux