From patchwork Thu Oct 22 06:46:21 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Jiang, Cheng1" X-Patchwork-Id: 81730 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 4073DA04DD; Thu, 22 Oct 2020 08:59:37 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id BA6F25A9D; Thu, 22 Oct 2020 08:59:34 +0200 (CEST) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id 226175A9C for ; Thu, 22 Oct 2020 08:59:31 +0200 (CEST) IronPort-SDR: VZ1IfgaEarz4Oh+e2EjZl9/7wX2JPtjB+cveZX311Jt6PDb/veRt/GRSdji2RqRo85aLw+guVW WB5yPd8oghHA== X-IronPort-AV: E=McAfee;i="6000,8403,9781"; a="146774878" X-IronPort-AV: E=Sophos;i="5.77,403,1596524400"; d="scan'208";a="146774878" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 Oct 2020 23:59:29 -0700 IronPort-SDR: TH73gglnNwJePxRGu5Mpqklaldp7A0Uwiplhzdu4CpnEAuZe8+oCqwpgzJmYxNW4EF0Fayxa1G p4Z+iVpFUcqA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,403,1596524400"; d="scan'208";a="359772072" Received: from dpdk_jiangcheng.sh.intel.com ([10.67.119.112]) by orsmga007.jf.intel.com with ESMTP; 21 Oct 2020 23:59:26 -0700 From: Cheng Jiang To: maxime.coquelin@redhat.com, chenbo.xia@intel.com Cc: dev@dpdk.org, patrick.fu@intel.com, YvonneX.Yang@intel.com, Cheng Jiang Date: Thu, 22 Oct 2020 06:46:21 +0000 Message-Id: <20201022064625.90974-1-Cheng1.jiang@intel.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20201021065044.31839-1-Cheng1.jiang@intel.com> References: <20201021065044.31839-1-Cheng1.jiang@intel.com> MIME-Version: 1.0 Subject: [dpdk-dev] [PATCH v9 0/4] add async data path in vhost sample X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" This patch set makes vhost-vswitch be able to use vhost async APIs for enqueue operations. Demonstrated how the application leverage IOAT DMA channel with vhost async APIs. We introduce two parameters to enable DMA acceleration for Tx operations of queues: -dma_type This parameter is used to specify DMA type for async vhost-user net driver. -dmas This parameter is used to specify the assigned DMA device of a vhost device and enable async vhost data path. --- v9: * Optimized code structure to solve compilation issue on non-x86 platforms v8: * Changed meson build file due to the change of ioat component name v7: * Improved IOAT callbacks and added some comments v6: * Cleand code and rebased for latest code v5: * Improved meson build file and fixed dependency problem v4: * Code rebased for latest IOAT driver v3: * Fixed a coding style problem v2: * Changed meson build file to fix dependency problem * Added parameter description in usage function * Optimized parameter settings and parsing function * Optimized abstraction, moved some code to ioat.c Cheng Jiang (4): example/vhost: add async vhost args parsing function example/vhost: add support for vhost async data path doc: update vhost sample doc for vhost async data path doc: update release notes for vhost sample doc/guides/rel_notes/release_20_11.rst | 6 + doc/guides/sample_app_ug/vhost.rst | 11 ++ examples/vhost/ioat.c | 198 +++++++++++++++++++++++++ examples/vhost/ioat.h | 47 ++++++ examples/vhost/main.c | 93 +++++++++++- examples/vhost/main.h | 1 + examples/vhost/meson.build | 5 + 7 files changed, 359 insertions(+), 2 deletions(-) create mode 100644 examples/vhost/ioat.c create mode 100644 examples/vhost/ioat.h -- 2.27.0