From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tetsuya Mukawa Subject: [PATCH v3 0/2] Add VHOST PMD Date: Mon, 9 Nov 2015 14:16:59 +0900 Message-ID: <1447046221-20811-1-git-send-email-mukawa@igel.co.jp> References: <1446436737-25606-2-git-send-email-mukawa@igel.co.jp> Cc: ann.zhuangyanying@huawei.com To: dev@dpdk.org Return-path: Received: from mail-pa0-f45.google.com (mail-pa0-f45.google.com [209.85.220.45]) by dpdk.org (Postfix) with ESMTP id 2B92D5938 for ; Mon, 9 Nov 2015 06:17:21 +0100 (CET) Received: by pacdm15 with SMTP id dm15so162704774pac.3 for ; Sun, 08 Nov 2015 21:17:20 -0800 (PST) In-Reply-To: <1446436737-25606-2-git-send-email-mukawa@igel.co.jp> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" The patch introduces a new PMD. This PMD is implemented as thin wrapper of librte_vhost. * 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 v3 changes: - Rebase on latest matser - Specify correct queue_id in RX/TX function. PATCH v2 changes: - Remove a below patch that fixes vhost library. The patch was applied as a separate patch. - vhost: fix crash with multiqueue enabled - Fix typos. (Thanks to Thomas, Monjalon) - Rebase on latest tree with above bernard's patches. PATCH v1 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. RFC 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. RFC PATCH v2 changes: - Fix issues reported by checkpatch.pl (Thanks to Stephen Hemminger) Tetsuya Mukawa (2): 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/rel_notes/release_2_2.rst | 2 + drivers/net/Makefile | 4 + drivers/net/vhost/Makefile | 62 +++ drivers/net/vhost/rte_eth_vhost.c | 768 ++++++++++++++++++++++++++ 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 | 13 +- lib/librte_vhost/virtio-net.c | 56 +- lib/librte_vhost/virtio-net.h | 4 +- mk/rte.app.mk | 8 +- 14 files changed, 993 insertions(+), 13 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