Re: [PATCH 06/21] vdpa: introduce virtqueue groups

From: Jason Wang
Date: Mon Jan 04 2021 - 23:16:00 EST



On 2021/1/4 下午6:04, Stefan Hajnoczi wrote:
On Wed, Dec 16, 2020 at 02:48:03PM +0800, Jason Wang wrote:
This patch introduces virtqueue groups to vDPA device. The virtqueue
group is the minimal set of virtqueues that must share an address
space. And the adddress space identifier could only be attached to
a specific virtqueue group.

A new mandated bus operation is introduced to get the virtqueue group
ID for a specific virtqueue.

All the vDPA device drivers were converted to simply support a single
virtqueue group.

Signed-off-by: Jason Wang <jasowang@xxxxxxxxxx>
---
drivers/vdpa/ifcvf/ifcvf_main.c | 9 ++++++++-
drivers/vdpa/mlx5/net/mlx5_vnet.c | 8 +++++++-
drivers/vdpa/vdpa.c | 4 +++-
drivers/vdpa/vdpa_sim/vdpa_sim.c | 11 ++++++++++-
include/linux/vdpa.h | 12 +++++++++---
5 files changed, 37 insertions(+), 7 deletions(-)
Maybe consider calling it iotlb_group or iommu_group so the purpose of
the group is clear?


I'm not sure. The reason that I choose virtqueue group is because:

1) Virtqueue is the only entity that tries to issues DMA
2) For IOMMU group, it may cause confusion to the existing IOMMU group who group devices
3) IOTLB is the concept in vhost, we don't have such definition in the virtio spec

Thanks