Below patch has been submitted as a separate patch. - [dpdk-dev,1/3] vhost: Fix wrong handling of virtqueue array index (http://dpdk.org/dev/patchwork/patch/8038/)
Tetsuya On 2015/10/27 15:12, Tetsuya Mukawa wrote: > The patch introduces a new PMD. This PMD is implemented as thin wrapper > of librte_vhost. The patch will work on below patch series. > - [PATCH v5 00/28] remove pci driver from vdevs > > * Known issue. > We may see issues while handling RESET_OWNER message. > These handlings are done in vhost library, so not a part of vhost PMD. > So far, we are waiting for QEMU fixing. > > PATCH v4 changes: > - Support vhost multiple queues. > - Rebase on "remove pci driver from vdevs". > - Optimize RX/TX functions. > - Fix resource leaks. > - Fix compile issue. > - Add patch to fix vhost library. > > PATCH v3 changes: > - Optimize performance. > In RX/TX functions, change code to access only per core data. > - Add below API to allow user to use vhost library APIs for a port managed > by vhost PMD. There are a few limitations. See "rte_eth_vhost.h". > - rte_eth_vhost_portid2vdev() > To support this functionality, vhost library is also changed. > Anyway, if users doesn't use vhost PMD, can fully use vhost library APIs. > - Add code to support vhost multiple queues. > Actually, multiple queues functionality is not enabled so far. > > PATCH v2 changes: > - Fix issues reported by checkpatch.pl > (Thanks to Stephen Hemminger) > > > Tetsuya Mukawa (3): > vhost: Fix wrong handling of virtqueue array index > vhost: Add callback and private data for vhost PMD > vhost: Add VHOST PMD > > config/common_linuxapp | 6 + > doc/guides/nics/index.rst | 1 + > doc/guides/nics/vhost.rst | 82 +++ > doc/guides/rel_notes/release_2_2.rst | 2 + > drivers/net/Makefile | 4 + > drivers/net/vhost/Makefile | 62 +++ > drivers/net/vhost/rte_eth_vhost.c | 765 > ++++++++++++++++++++++++++ > drivers/net/vhost/rte_eth_vhost.h | 65 +++ > drivers/net/vhost/rte_pmd_vhost_version.map | 8 + > lib/librte_vhost/rte_vhost_version.map | 6 + > lib/librte_vhost/rte_virtio_net.h | 3 + > lib/librte_vhost/vhost_user/virtio-net-user.c | 33 +- > lib/librte_vhost/virtio-net.c | 61 +- > lib/librte_vhost/virtio-net.h | 4 +- > mk/rte.app.mk | 8 +- > 15 files changed, 1085 insertions(+), 25 deletions(-) > create mode 100644 doc/guides/nics/vhost.rst > create mode 100644 drivers/net/vhost/Makefile > create mode 100644 drivers/net/vhost/rte_eth_vhost.c > create mode 100644 drivers/net/vhost/rte_eth_vhost.h > create mode 100644 drivers/net/vhost/rte_pmd_vhost_version.map >