From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id 7DCEA8AE8 for ; Sat, 11 Oct 2014 10:23:34 +0200 (CEST) Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga101.fm.intel.com with ESMTP; 11 Oct 2014 01:31:03 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.97,862,1389772800"; d="scan'208";a="398644524" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by FMSMGA003.fm.intel.com with ESMTP; 11 Oct 2014 01:24:05 -0700 Received: from shsmsx151.ccr.corp.intel.com (10.239.6.50) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.195.1; Sat, 11 Oct 2014 01:31:02 -0700 Received: from shsmsx102.ccr.corp.intel.com ([169.254.2.192]) by SHSMSX151.ccr.corp.intel.com ([169.254.3.172]) with mapi id 14.03.0195.001; Sat, 11 Oct 2014 16:31:01 +0800 From: "Ouyang, Changchun" To: "Xie, Huawei" , "dev@dpdk.org" Thread-Topic: [dpdk-dev] [PATCH v6 00/25] user space vhost library Thread-Index: AQHP4ymGhE3draCLWU+gBWTx6F15bpwqlKLA Date: Sat, 11 Oct 2014 08:31:00 +0000 Message-ID: References: <1412794499-4332-1-git-send-email-huawei.xie@intel.com> In-Reply-To: <1412794499-4332-1-git-send-email-huawei.xie@intel.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v6 00/25] user space vhost library X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 11 Oct 2014 08:23:35 -0000 > -----Original Message----- > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Huawei Xie > Sent: Thursday, October 9, 2014 2:55 AM > To: dev@dpdk.org > Subject: [dpdk-dev] [PATCH v6 00/25] user space vhost library >=20 > This set of patches transforms and refactors vhost example to a user spac= e > vhost library. > This library implements a user space vhost cuse driver, and provides gene= ric > APIs for user space ethernet vSwitch to integrate us-vhost for fast packe= t > switching with guest virtio. >=20 > vhost lib consists of five APIs plus several helper routines for feature > disable/enable. > 1) rte_vhost_driver_register initializes vhost driver. > 2) rte_vhost_driver_callback_register registers the callbacks. > Callbacks are called from vhost driver when a virtio device is ready to b= e > added to the data processing core or is de-activated by guest. > 3) rte_vhost_driver_session_start, a blocking API to start vhost message > handler session loop. > 4) rte_vhost_enqueue_burst and rte_vhost_dequeue_burst for > enqueue/dequeue packets to/from virtio ring respectively. >=20 > v2) turn off vhost lib by default >=20 > v3) fixed checkpatch issues >=20 > v4) split the patch per thomas' requirement >=20 > v5) fine granularity split of the patch > regenerate patches based on latest commit > this patchset removes vhost example patches, which will be submitted > later. >=20 > Huawei Xie (25): > move src files from examples/vhost to lib/librte_vhost > rename main.c to vhost_rxtx.c and virtio-net.h to rte_vhost_net.h > keep virtio_dev_(merge_)rx, copy_from_mbuf_to_vring and > virtio_dev_merge_tx; remove anything else in vhost_rxtx.c > remove mac learning, mac/vlan, VMDQ and other switching related logic > remove host memory region region related logic > remove retry > patch virtio_dev_merge_tx to make it return packets to app > patch vhost_dev_merge_tx about buf_size > add queue_id parameter to vhost rx/tx functions > define PACKET_BURST > rte_vhost_en/dequeue_burst API > move virtio_net_config_ll strcture to virtio_net.c > remove index > call get_virtio_net_callbacks to get the ops in register_cuse_device > rte_vhost_driver_register and rte_vhost_session_start API > rte_vhost_callback_register API > add debug print > define VHOST_SUPPORTED_FEATURES > header file cleanup > static fix > add priv field in virtio_net to store application specific context > coding style fixes > add TODO/FIXME > add vhost support in Makefile >=20 > config/common_linuxapp | 8 + > examples/vhost/Makefile | 60 - > examples/vhost/eventfd_link/Makefile | 39 - > examples/vhost/eventfd_link/eventfd_link.c | 205 -- > examples/vhost/eventfd_link/eventfd_link.h | 79 - > examples/vhost/libvirt/qemu-wrap.py | 367 --- > examples/vhost/main.c | 3727 --------------------= ------ > examples/vhost/main.h | 86 - > examples/vhost/vhost-net-cdev.c | 367 --- > examples/vhost/vhost-net-cdev.h | 83 - > examples/vhost/virtio-net.c | 1165 -------- > examples/vhost/virtio-net.h | 161 -- > lib/Makefile | 1 + > lib/librte_vhost/eventfd_link/Makefile | 39 + > lib/librte_vhost/eventfd_link/eventfd_link.c | 205 ++ > lib/librte_vhost/eventfd_link/eventfd_link.h | 79 + > lib/librte_vhost/libvirt/qemu-wrap.py | 367 +++ > lib/librte_vhost/rte_virtio_net.h | 208 ++ > lib/librte_vhost/vhost-net-cdev.c | 360 +++ > lib/librte_vhost/vhost-net-cdev.h | 113 + > lib/librte_vhost/vhost_rxtx.c | 733 +++++ > lib/librte_vhost/virtio-net.c | 1028 +++++++ > mk/rte.app.mk | 5 + > 23 files changed, 3146 insertions(+), 6339 deletions(-) delete mode 100= 644 > examples/vhost/Makefile delete mode 100644 > examples/vhost/eventfd_link/Makefile > delete mode 100644 examples/vhost/eventfd_link/eventfd_link.c > delete mode 100644 examples/vhost/eventfd_link/eventfd_link.h > delete mode 100755 examples/vhost/libvirt/qemu-wrap.py > delete mode 100644 examples/vhost/main.c delete mode 100644 > examples/vhost/main.h delete mode 100644 examples/vhost/vhost-net- > cdev.c delete mode 100644 examples/vhost/vhost-net-cdev.h delete mode > 100644 examples/vhost/virtio-net.c delete mode 100644 > examples/vhost/virtio-net.h create mode 100644 > lib/librte_vhost/eventfd_link/Makefile > create mode 100644 lib/librte_vhost/eventfd_link/eventfd_link.c > create mode 100644 lib/librte_vhost/eventfd_link/eventfd_link.h > create mode 100755 lib/librte_vhost/libvirt/qemu-wrap.py > create mode 100644 lib/librte_vhost/rte_virtio_net.h create mode 100644 > lib/librte_vhost/vhost-net-cdev.c create mode 100644 > lib/librte_vhost/vhost-net-cdev.h create mode 100644 > lib/librte_vhost/vhost_rxtx.c create mode 100644 lib/librte_vhost/virtio= - > net.c >=20 > -- > 1.8.1.4 Acked-by: Changchun Ouyang