vDPA device is a device that uses a datapath which complies with the virtio specifications with vendor specific control path. vDPA devices can be both physically located on the hardware or emulated by software. This RFC introduce the vDPA support in qemu TODO 1) vIOMMU support 2) live migration support
Cindy Lu (8): net: introduce qemu_get_peer vhost_net: use the function qemu_get_peer vhost-backend: export the vhost backend helper vhsot_net: introduce set_config & get_config function vhost: introduce new VhostOps vhost_dev_start vhost: implement vhost_dev_start method vhost-vdpa: introduce vhost-vdpa backend vhost-vdpa: introduce vhost-vdpa net client Jason Wang (2): virtio-bus: introduce queue_enabled method virtio-pci: implement queue_enabled method configure | 21 ++ hw/net/vhost_net.c | 46 +++- hw/net/virtio-net.c | 19 +- hw/virtio/Makefile.objs | 1 + hw/virtio/vhost-backend.c | 40 ++- hw/virtio/vhost-vdpa.c | 406 ++++++++++++++++++++++++++++++ hw/virtio/vhost.c | 59 ++++- hw/virtio/virtio-pci.c | 18 ++ hw/virtio/virtio.c | 6 + include/hw/virtio/vhost-backend.h | 36 ++- include/hw/virtio/vhost-vdpa.h | 26 ++ include/hw/virtio/vhost.h | 8 + include/hw/virtio/virtio-bus.h | 4 + include/net/net.h | 1 + include/net/vhost-vdpa.h | 21 ++ include/net/vhost_net.h | 6 +- net/Makefile.objs | 2 +- net/clients.h | 2 + net/net.c | 9 + net/vhost-vdpa.c | 230 +++++++++++++++++ qapi/net.json | 23 +- qemu-options.hx | 12 + 22 files changed, 952 insertions(+), 44 deletions(-) create mode 100644 hw/virtio/vhost-vdpa.c create mode 100644 include/hw/virtio/vhost-vdpa.h create mode 100644 include/net/vhost-vdpa.h create mode 100644 net/vhost-vdpa.c -- 2.21.1