On Mon, Jul 12, 2021 at 01:44:45PM +0800, Jason Wang wrote:
> 
> 在 2021/7/6 下午4:26, Jason Wang 写道:
> > Hi All:
> > 
> > This patch implements the multiqueue support for vhost-vDPA. The most
> > important requirement the control virtqueue support. The virtio-net
> > and vhost-net core are tweak to support control virtqueue as if what
> > data queue pairs are done: a dedicated vhost_net device which is
> > coupled with the NetClientState is intrdouced so most of the existing
> > vhost codes could be reused with minor changes. With the control
> > virtqueue, vhost-vDPA are extend to support creating and destroying
> > multiqueue queue pairs plus the control virtqueue.
> > 
> > Tests are done via the vp_vdpa driver in L1 guest plus vdpa simulator
> > on L0.
> > 
> > Please reivew.
> 
> 
> If no objection, I will queue this for 6.1.
> 
> Thanks


Just to make sure I understand, this basically works by
passing the cvq through to the guest right?
Giving up on maintaining the state in qemu.

> 
> > 
> > Changes since V1:
> > 
> > - validating all features that depends on ctrl vq
> > - typo fixes and commit log tweaks
> > - fix build errors because max_qps is used before it is introduced
> > 
> > Thanks
> > 
> > Jason Wang (18):
> >    vhost_net: remove the meaningless assignment in vhost_net_start_one()
> >    vhost: use unsigned int for nvqs
> >    vhost_net: do not assume nvqs is always 2
> >    vhost-vdpa: remove the unnecessary check in vhost_vdpa_add()
> >    vhost-vdpa: don't cleanup twice in vhost_vdpa_add()
> >    vhost-vdpa: fix leaking of vhost_net in vhost_vdpa_add()
> >    vhost-vdpa: tweak the error label in vhost_vdpa_add()
> >    vhost-vdpa: fix the wrong assertion in vhost_vdpa_init()
> >    vhost-vdpa: remove the unncessary queue_index assignment
> >    vhost-vdpa: open device fd in net_init_vhost_vdpa()
> >    vhost-vdpa: classify one time request
> >    vhost-vdpa: prepare for the multiqueue support
> >    vhost-vdpa: let net_vhost_vdpa_init() returns NetClientState *
> >    net: introduce control client
> >    vhost-net: control virtqueue support
> >    virito-net: use "qps" instead of "queues" when possible
> >    virtio-net: vhost control virtqueue support
> >    vhost-vdpa: multiqueue support
> > 
> >   hw/net/vhost_net.c             |  48 +++++++---
> >   hw/net/virtio-net.c            | 165 ++++++++++++++++++---------------
> >   hw/virtio/vhost-vdpa.c         |  55 ++++++++++-
> >   include/hw/virtio/vhost-vdpa.h |   1 +
> >   include/hw/virtio/vhost.h      |   2 +-
> >   include/hw/virtio/virtio-net.h |   5 +-
> >   include/net/net.h              |   5 +
> >   include/net/vhost_net.h        |   7 +-
> >   net/net.c                      |  24 ++++-
> >   net/tap.c                      |   1 +
> >   net/vhost-user.c               |   1 +
> >   net/vhost-vdpa.c               | 156 ++++++++++++++++++++++++-------
> >   12 files changed, 332 insertions(+), 138 deletions(-)
> > 


Reply via email to