All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: "Eugenio Pérez" <eperezma@redhat.com>
Cc: qemu-devel@nongnu.org, Parav Pandit <parav@mellanox.com>,
	Stefan Hajnoczi <stefanha@redhat.com>,
	Si-Wei Liu <si-wei.liu@oracle.com>,
	Laurent Vivier <lvivier@redhat.com>,
	Harpreet Singh Anand <hanand@xilinx.com>,
	Gautam Dawar <gdawar@xilinx.com>,
	Liuxiangdong <liuxiangdong5@huawei.com>,
	Stefano Garzarella <sgarzare@redhat.com>,
	Jason Wang <jasowang@redhat.com>, Cindy Lu <lulu@redhat.com>,
	Eli Cohen <eli@mellanox.com>, Cornelia Huck <cohuck@redhat.com>,
	Zhu Lingshan <lingshan.zhu@intel.com>,
	kvm@vger.kernel.org, "Gonglei (Arei)" <arei.gonglei@huawei.com>,
	Paolo Bonzini <pbonzini@redhat.com>
Subject: Re: [PATCH v6 00/10] ASID support in vhost-vdpa net
Date: Thu, 10 Nov 2022 07:25:14 -0500	[thread overview]
Message-ID: <20221110072455-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20221108170755.92768-1-eperezma@redhat.com>

On Tue, Nov 08, 2022 at 06:07:45PM +0100, Eugenio Pérez wrote:
> Control VQ is the way net devices use to send changes to the device state, like
> the number of active queues or its mac address.
> 
> QEMU needs to intercept this queue so it can track these changes and is able to
> migrate the device. It can do it from 1576dbb5bbc4 ("vdpa: Add x-svq to
> NetdevVhostVDPAOptions"). However, to enable x-svq implies to shadow all VirtIO
> device's virtqueues, which will damage performance.
> 
> This series adds address space isolation, so the device and the guest
> communicate directly with them (passthrough) and CVQ communication is split in
> two: The guest communicates with QEMU and QEMU forwards the commands to the
> device.
> 
> Comments are welcome. Thanks!


This is not 7.2 material, right?

> v6:
> - Do not allocate SVQ resources like file descriptors if SVQ cannot be used.
> - Disable shadow CVQ if the device does not support it because of net
>   features.
> 
> v5:
> - Move vring state in vhost_vdpa_get_vring_group instead of using a
>   parameter.
> - Rename VHOST_VDPA_NET_CVQ_PASSTHROUGH to VHOST_VDPA_NET_DATA_ASID
> 
> v4:
> - Rebased on last CVQ start series, that allocated CVQ cmd bufs at load
> - Squash vhost_vdpa_cvq_group_is_independent.
> - Do not check for cvq index on vhost_vdpa_net_prepare, we only have one
>   that callback registered in that NetClientInfo.
> - Add comment specifying behavior if device does not support _F_ASID
> - Update headers to a later Linux commit to not to remove SETUP_RNG_SEED
> 
> v3:
> - Do not return an error but just print a warning if vdpa device initialization
>   returns failure while getting AS num of VQ groups
> - Delete extra newline
> 
> v2:
> - Much as commented on series [1], handle vhost_net backend through
>   NetClientInfo callbacks instead of directly.
> - Fix not freeing SVQ properly when device does not support CVQ
> - Add BIT_ULL missed checking device's backend feature for _F_ASID.
> 
> Eugenio Pérez (10):
>   vdpa: Use v->shadow_vqs_enabled in vhost_vdpa_svqs_start & stop
>   vhost: set SVQ device call handler at SVQ start
>   vhost: Allocate SVQ device file descriptors at device start
>   vdpa: add vhost_vdpa_net_valid_svq_features
>   vdpa: move SVQ vring features check to net/
>   vdpa: Allocate SVQ unconditionally
>   vdpa: Add asid parameter to vhost_vdpa_dma_map/unmap
>   vdpa: Store x-svq parameter in VhostVDPAState
>   vdpa: Add listener_shadow_vq to vhost_vdpa
>   vdpa: Always start CVQ in SVQ mode
> 
>  include/hw/virtio/vhost-vdpa.h     |  10 +-
>  hw/virtio/vhost-shadow-virtqueue.c |  35 +-----
>  hw/virtio/vhost-vdpa.c             | 114 ++++++++++---------
>  net/vhost-vdpa.c                   | 171 ++++++++++++++++++++++++++---
>  hw/virtio/trace-events             |   4 +-
>  5 files changed, 222 insertions(+), 112 deletions(-)
> 
> -- 
> 2.31.1
> 


  parent reply	other threads:[~2022-11-10 12:27 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-11-08 17:07 [PATCH v6 00/10] ASID support in vhost-vdpa net Eugenio Pérez
2022-11-08 17:07 ` [PATCH v6 01/10] vdpa: Use v->shadow_vqs_enabled in vhost_vdpa_svqs_start & stop Eugenio Pérez
2022-11-10  5:21   ` Jason Wang
2022-11-10 12:54     ` Eugenio Perez Martin
2022-11-11  7:24       ` Jason Wang
2022-11-08 17:07 ` [PATCH v6 02/10] vhost: set SVQ device call handler at SVQ start Eugenio Pérez
2022-11-10  5:22   ` Jason Wang
2022-11-08 17:07 ` [PATCH v6 03/10] vhost: Allocate SVQ device file descriptors at device start Eugenio Pérez
2022-11-10  5:28   ` Jason Wang
2022-11-08 17:07 ` [PATCH v6 04/10] vdpa: add vhost_vdpa_net_valid_svq_features Eugenio Pérez
2022-11-10  5:29   ` Jason Wang
2022-11-08 17:07 ` [PATCH v6 05/10] vdpa: move SVQ vring features check to net/ Eugenio Pérez
2022-11-10  5:40   ` Jason Wang
2022-11-10 13:09     ` Eugenio Perez Martin
2022-11-11  7:34       ` Jason Wang
2022-11-11  7:55         ` Eugenio Perez Martin
2022-11-11  8:07           ` Jason Wang
2022-11-11 12:58             ` Eugenio Perez Martin
2022-11-14  4:26               ` Jason Wang
2022-11-14 10:10                 ` Eugenio Perez Martin
2022-11-08 17:07 ` [PATCH v6 06/10] vdpa: Allocate SVQ unconditionally Eugenio Pérez
2022-11-08 17:07 ` [PATCH v6 07/10] vdpa: Add asid parameter to vhost_vdpa_dma_map/unmap Eugenio Pérez
2022-11-10  5:50   ` Jason Wang
2022-11-10 13:22     ` Eugenio Perez Martin
2022-11-11  7:41       ` Jason Wang
2022-11-11 13:02         ` Eugenio Perez Martin
2022-11-14  4:27           ` Jason Wang
2022-11-08 17:07 ` [PATCH v6 08/10] vdpa: Store x-svq parameter in VhostVDPAState Eugenio Pérez
2022-11-08 17:07 ` [PATCH v6 09/10] vdpa: Add listener_shadow_vq to vhost_vdpa Eugenio Pérez
2022-11-10  6:00   ` Jason Wang
2022-11-10 13:47     ` Eugenio Perez Martin
2022-11-11  7:48       ` Jason Wang
2022-11-11 13:12         ` Eugenio Perez Martin
2022-11-14  4:30           ` Jason Wang
2022-11-14 16:30             ` Eugenio Perez Martin
2022-11-15  3:04               ` Jason Wang
2022-11-15 11:24                 ` Eugenio Perez Martin
2022-11-16  3:33                   ` Jason Wang
2022-11-08 17:07 ` [PATCH v6 10/10] vdpa: Always start CVQ in SVQ mode Eugenio Pérez
2022-11-10  6:24   ` Jason Wang
2022-11-10 16:07     ` Eugenio Perez Martin
2022-11-11  8:02       ` Jason Wang
2022-11-11 14:38         ` Eugenio Perez Martin
2022-11-14  4:36           ` Jason Wang
2022-11-10 12:25 ` Michael S. Tsirkin [this message]
2022-11-10 12:56   ` [PATCH v6 00/10] ASID support in vhost-vdpa net Eugenio Perez Martin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20221110072455-mutt-send-email-mst@kernel.org \
    --to=mst@redhat.com \
    --cc=arei.gonglei@huawei.com \
    --cc=cohuck@redhat.com \
    --cc=eli@mellanox.com \
    --cc=eperezma@redhat.com \
    --cc=gdawar@xilinx.com \
    --cc=hanand@xilinx.com \
    --cc=jasowang@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=lingshan.zhu@intel.com \
    --cc=liuxiangdong5@huawei.com \
    --cc=lulu@redhat.com \
    --cc=lvivier@redhat.com \
    --cc=parav@mellanox.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=sgarzare@redhat.com \
    --cc=si-wei.liu@oracle.com \
    --cc=stefanha@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.