[dpdk-dev] [RFC PATCH v3 0/2] Add VHOST PMD
Tetsuya Mukawa
mukawa at igel.co.jp
Thu Oct 22 11:45:48 CEST 2015
The patch introduces a new PMD. This PMD is implemented as thin wrapper
of librte_vhost.
I've submitted below patches in former patch sets. But it seems some issues
were fixed already.
- [PATCH 1/3] vhost: Fix return value of GET_VRING_BASE message
- [PATCH 2/3] vhost: Fix RESET_OWNER handling not to close callfd
- [PATCH 3/3] vhost: Fix RESET_OWNER handling not to free virtqueue
I've still seen some reasource leaks of vhost library, but in this RFC,
I focused on vhost PMD.
After I get agreement, I will submit a patch for the leak issue as separated
patch. So please check directionality of vhost PMD.
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 bit of 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.
Tetsuya Mukawa (2):
vhost: Add callback and private data for vhost PMD
vhost: Add VHOST PMD
config/common_linuxapp | 6 +
drivers/net/Makefile | 4 +
drivers/net/vhost/Makefile | 62 +++
drivers/net/vhost/rte_eth_vhost.c | 735 ++++++++++++++++++++++++++
drivers/net/vhost/rte_eth_vhost.h | 65 +++
drivers/net/vhost/rte_pmd_vhost_version.map | 8 +
lib/librte_vhost/rte_virtio_net.h | 3 +
lib/librte_vhost/vhost_user/virtio-net-user.c | 8 +-
lib/librte_vhost/virtio-net.c | 40 +-
lib/librte_vhost/virtio-net.h | 3 +-
mk/rte.app.mk | 8 +-
11 files changed, 934 insertions(+), 8 deletions(-)
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
--
2.1.4
More information about the dev
mailing list