All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 00/10] add generic vDPA device support
@ 2022-01-17 12:43 Longpeng(Mike) via
  2022-01-17 12:43 ` [PATCH v2 01/10] virtio: get class_id and pci device id by the virtio id Longpeng(Mike) via
                   ` (9 more replies)
  0 siblings, 10 replies; 28+ messages in thread
From: Longpeng(Mike) via @ 2022-01-17 12:43 UTC (permalink / raw)
  To: stefanha, mst, cohuck
  Cc: pbonzini, arei.gonglei, yechuan, huangzhichao, qemu-devel, Longpeng

From: Longpeng <longpeng2@huawei.com>

Hi guys,

This patchset tries to support the generic vDPA device, the previous
disscussion can be found here [1].

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,vdpa-dev=/dev/vhost-vdpa-X

I've done some simple tests on Huawei's offloading card (net, 0.95)
and vdpa_sim_blk (1.0);

The kernel part:
  https://lkml.org/lkml/2022/1/17/239

Changes RFC -> v1
  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) (10):
  virtio: get class_id and pci device id by the virtio id
  update linux headers
  vdpa: add the infrastructure of vdpa-dev
  vdpa-dev: implement the instance_init/class_init interface
  vdpa-dev: implement the realize interface
  vdpa-dev: implement the unrealize interface
  vdpa-dev: implement the get_config/set_config interface
  vdpa-dev: implement the get_features interface
  vdpa-dev: implement the set_status interface
  vdpa-dev: mark the device as unmigratable

 hw/virtio/Kconfig            |   5 +
 hw/virtio/meson.build        |   2 +
 hw/virtio/vdpa-dev-pci.c     |  99 ++++++++++
 hw/virtio/vdpa-dev.c         | 357 +++++++++++++++++++++++++++++++++++
 hw/virtio/virtio-pci.c       |  77 ++++++++
 hw/virtio/virtio-pci.h       |   5 +
 include/hw/virtio/vdpa-dev.h |  29 +++
 linux-headers/linux/vhost.h  |   7 +
 8 files changed, 581 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



^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2022-03-08 12:02 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-17 12:43 [PATCH v2 00/10] add generic vDPA device support Longpeng(Mike) via
2022-01-17 12:43 ` [PATCH v2 01/10] virtio: get class_id and pci device id by the virtio id Longpeng(Mike) via
2022-01-17 12:43 ` [PATCH v2 02/10] update linux headers Longpeng(Mike) via
2022-01-17 12:43 ` [PATCH v2 03/10] vdpa: add the infrastructure of vdpa-dev Longpeng(Mike) via
2022-01-17 12:43 ` [PATCH v2 04/10] vdpa-dev: implement the instance_init/class_init interface Longpeng(Mike) via
2022-01-19 11:23   ` Stefano Garzarella
2022-03-05  6:06     ` longpeng2--- via
2022-03-07  8:10       ` Stefano Garzarella
2022-03-07  8:55         ` longpeng2--- via
2022-03-07  9:13           ` Stefano Garzarella
2022-03-07  9:25             ` longpeng2--- via
2022-01-17 12:43 ` [PATCH v2 05/10] vdpa-dev: implement the realize interface Longpeng(Mike) via
2022-01-19 11:30   ` Stefano Garzarella
2022-03-05  7:07     ` longpeng2--- via
2022-03-07  8:23       ` Stefano Garzarella
2022-03-07 11:13         ` longpeng2--- via
2022-03-07 12:14           ` Stefano Garzarella
2022-03-08  3:19             ` longpeng2--- via
2022-03-08  8:41               ` Stefano Garzarella
2022-03-08  9:42                 ` longpeng2--- via
2022-03-08 11:55                   ` Stefano Garzarella
2022-01-17 12:43 ` [PATCH v2 06/10] vdpa-dev: implement the unrealize interface Longpeng(Mike) via
2022-01-19 11:36   ` Stefano Garzarella
2022-03-05  7:11     ` longpeng2--- via
2022-01-17 12:43 ` [PATCH v2 07/10] vdpa-dev: implement the get_config/set_config interface Longpeng(Mike) via
2022-01-17 12:43 ` [PATCH v2 08/10] vdpa-dev: implement the get_features interface Longpeng(Mike) via
2022-01-17 12:43 ` [PATCH v2 09/10] vdpa-dev: implement the set_status interface Longpeng(Mike) via
2022-01-17 12:43 ` [PATCH v2 10/10] vdpa-dev: mark the device as unmigratable Longpeng(Mike) via

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.