qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Longpeng(Mike)" via <qemu-devel@nongnu.org>
To: <stefanha@redhat.com>, <mst@redhat.com>, <jasowang@redhat.com>,
	<sgarzare@redhat.com>
Cc: <cohuck@redhat.com>, <pbonzini@redhat.com>,
	<arei.gonglei@huawei.com>, <yechuan@huawei.com>,
	<huangzhichao@huawei.com>, <qemu-devel@nongnu.org>,
	<longpeng2@huawei.com>
Subject: [PATCH v5 0/4] add generic vDPA device support
Date: Thu, 12 May 2022 14:20:59 +0800	[thread overview]
Message-ID: <20220512062103.1875-1-longpeng2@huawei.com> (raw)

From: Longpeng <longpeng2@huawei.com>

Hi guys,

With the generic vDPA device, QEMU won't need to touch the device
types any more, such like vfio.

We can use the generic vDPA device as follow:
  -device vhost-vdpa-device-pci,vhostdev=/dev/vhost-vdpa-X
  Or
  -M microvm -m 512m -smp 2 -kernel ... -initrd ... -device \
  vhost-vdpa-device,vhostdev=/dev/vhost-vdpa-x

I've done some simple tests on Huawei's offloading card (net, 0.95).

Changes v4 -> v5:
  Patch 3:
    - remove vhostfd [Jason]
	- support virtio-mmio [Jason]

Changes v3 -> v4:
  v3: https://www.mail-archive.com/qemu-devel@nongnu.org/msg877015.html
  - reorganize the series [Stefano]
  - fix some typos [Stefano]
  - fix logical error in vhost_vdpa_device_realize [Stefano]

Changes v2 -> v3
  Patch 4 & 5:
    - only call vdpa ioctls in vdpa-dev.c [Stefano, Longpeng]
    - s/VQS_NUM/VQS_COUNT  [Stefano]
    - check both vdpa_dev_fd and vdpa_dev [Stefano]
  Patch 6:
    - move all steps into vhost_vdpa_device_unrealize. [Stefano]

Changes RFC -> v2
  Patch 1:
    - rename 'pdev_id' to 'trans_devid'  [Michael]
    - only use transitional device id for the devices
      listed in the spec  [Michael]
    - use macros to make the id_info table clearer  [Longpeng]
    - add some modern devices in the id_info table  [Longpeng]
  Patch 2:
    - remove the GET_VECTORS_NUM command  [Jason]
  Patch 4:
    - expose vdpa_dev_fd as a QOM preperty  [Stefan]
    - introduce vhost_vdpa_device_get_u32 as a common
      function to make the code clearer  [Stefan]
    - fix the misleading description of 'dc->desc'  [Stefano]
  Patch 5:
    - check returned number of virtqueues  [Stefan]
  Patch 6:
    - init s->num_queues  [Stefano]
    - free s->dev.vqs  [Stefano]

Longpeng (Mike) (4):
  linux-headers: Update headers to Linux 5.18-rc6
  virtio: get class_id and pci device id by the virtio id
  vdpa: add vdpa-dev support
  vdpa: add vdpa-dev-pci support

 hw/virtio/Kconfig            |   5 +
 hw/virtio/meson.build        |   2 +
 hw/virtio/vdpa-dev-pci.c     | 101 ++++++++++
 hw/virtio/vdpa-dev.c         | 377 +++++++++++++++++++++++++++++++++++
 hw/virtio/virtio-pci.c       |  77 +++++++
 hw/virtio/virtio-pci.h       |   5 +
 include/hw/virtio/vdpa-dev.h |  43 ++++
 linux-headers/linux/vhost.h  |   7 +
 8 files changed, 617 insertions(+)
 create mode 100644 hw/virtio/vdpa-dev-pci.c
 create mode 100644 hw/virtio/vdpa-dev.c
 create mode 100644 include/hw/virtio/vdpa-dev.h

-- 
2.23.0



             reply	other threads:[~2022-05-12  6:24 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-12  6:20 Longpeng(Mike) via [this message]
2022-05-12  6:21 ` [PATCH v5 1/4] linux-headers: Update headers to Linux 5.18-rc6 Longpeng(Mike) via
2022-05-12  6:21 ` [PATCH v5 2/4] virtio: get class_id and pci device id by the virtio id Longpeng(Mike) via
2022-05-12  6:56   ` Michael S. Tsirkin
2022-05-13  3:17     ` longpeng2--- via
2022-05-12  6:21 ` [PATCH v5 3/4] vdpa: add vdpa-dev support Longpeng(Mike) via
2022-05-12 14:36   ` Stefano Garzarella
2022-05-13  2:17     ` longpeng2--- via
2022-05-13  6:34       ` Stefano Garzarella
2022-05-12  6:21 ` [PATCH v5 4/4] vdpa: add vdpa-dev-pci support Longpeng(Mike) via
2022-05-12 14:49   ` Stefano Garzarella

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=20220512062103.1875-1-longpeng2@huawei.com \
    --to=qemu-devel@nongnu.org \
    --cc=arei.gonglei@huawei.com \
    --cc=cohuck@redhat.com \
    --cc=huangzhichao@huawei.com \
    --cc=jasowang@redhat.com \
    --cc=longpeng2@huawei.com \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=sgarzare@redhat.com \
    --cc=stefanha@redhat.com \
    --cc=yechuan@huawei.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).