From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 95DD0A0524; Tue, 13 Apr 2021 17:09:12 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 72B731610DB; Tue, 13 Apr 2021 17:09:12 +0200 (CEST) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by mails.dpdk.org (Postfix) with ESMTP id 7F6161610DA for ; Tue, 13 Apr 2021 17:09:11 +0200 (CEST) IronPort-SDR: bAn3RzPxgpy4fmfZ1l1GHoeQlpvKuNnotbRaCy50y35UdfLF5rLosxlcLU6UINeqKcsHgS2v4S jRQ+TYSljr1g== X-IronPort-AV: E=McAfee;i="6200,9189,9953"; a="174533394" X-IronPort-AV: E=Sophos;i="5.82,219,1613462400"; d="scan'208";a="174533394" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Apr 2021 08:09:10 -0700 IronPort-SDR: wcMI3+W5m1DFev664rDM/PPqIkj1LfUo6/Bnky+/MEwgCnkspWooV/hCN1zOf6LZsB7swHCjKj L0qyZ+FYkKEg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.82,219,1613462400"; d="scan'208";a="460614265" Received: from dpdk_jiangcheng.sh.intel.com ([10.67.119.112]) by orsmga001.jf.intel.com with ESMTP; 13 Apr 2021 08:09:06 -0700 From: Cheng Jiang To: maxime.coquelin@redhat.com, chenbo.xia@intel.com Cc: dev@dpdk.org, jiayu.hu@intel.com, yvonnex.yang@intel.com, yinan.wang@intel.com, yong.liu@intel.com, Cheng Jiang Date: Tue, 13 Apr 2021 14:55:48 +0000 Message-Id: <20210413145552.41894-1-Cheng1.jiang@intel.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210317085426.10119-1-Cheng1.jiang@intel.com> References: <20210317085426.10119-1-Cheng1.jiang@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH v6 0/4] add support for packed ring in async vhost X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 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" For now async vhost data path only supports split ring structure. In order to make async vhost compatible with virtio 1.1 spec this patch set cleans async split ring codes and enables packed ring in async vhost data path. Batch datapath is also enabled in async vhost packed ring. v6: * fix some typos in commit log * improve index usage * remove shadow_ring_store() * add store_dma_desc_info_split() store_dma_desc_info_packed() * remove some checks in vhost_free_async_mem() * change index calculation since the size isn't necessarily a power of 2 * move error handling in a dedicated function * clean codes v5: * clean some codes for packed ring datapath * fix an index error in shadow_ring_store() v4: * change the patch structure * clean code for async split ring * reuse some code from split ring * change the error handler for DMA-copy packet * add check for malloc * remove useless code * add doc update v3: * fix error handler for DMA-copy packet v2: * fix wrong buffer index in rte_vhost_poll_enqueue_completed() * add async_buffers_packed memory free in vhost_free_async_mem() Cheng Jiang (4): vhost: abstract and reorganize async split ring code vhost: add support for packed ring in async vhost vhost: add batch datapath for async vhost packed ring doc: add release note for vhost async packed ring doc/guides/rel_notes/release_21_05.rst | 4 + lib/librte_vhost/rte_vhost_async.h | 1 + lib/librte_vhost/vhost.c | 37 +- lib/librte_vhost/vhost.h | 15 +- lib/librte_vhost/virtio_net.c | 593 +++++++++++++++++++++---- 5 files changed, 550 insertions(+), 100 deletions(-) -- 2.29.2