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 1844BA0547; Mon, 19 Apr 2021 11:05:00 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id F32E840683; Mon, 19 Apr 2021 11:04:59 +0200 (CEST) Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by mails.dpdk.org (Postfix) with ESMTP id 388DA40040 for ; Mon, 19 Apr 2021 11:04:58 +0200 (CEST) IronPort-SDR: ih0CbQwSEneNkpj/nb+AGgj5jqvqgLfNZBtXosc4lK++hta0ylKCd4j0gI1cFgv8qEVXaqhxIv fdhOnjmTNRkw== X-IronPort-AV: E=McAfee;i="6200,9189,9958"; a="182424726" X-IronPort-AV: E=Sophos;i="5.82,233,1613462400"; d="scan'208";a="182424726" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 19 Apr 2021 02:04:56 -0700 IronPort-SDR: JBFbvtivKS7WYkauQBQH9pslkj+beh/RaDIDs+YWMsT6Gt3yWwaREq8x5ZCZuRGbjKovQ6/VCk 3rce66lGNv3Q== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.82,233,1613462400"; d="scan'208";a="400566084" Received: from dpdk_jiangcheng.sh.intel.com ([10.67.119.112]) by orsmga002.jf.intel.com with ESMTP; 19 Apr 2021 02:04:53 -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: Mon, 19 Apr 2021 08:51:00 +0000 Message-Id: <20210419085104.47078-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 v8 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. v8: * fix some variable names for consistency * clean codes v7: * fix compile issues * add argument *dev in vhost_free_async_mem() for ring type decision 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 | 79 +++- lib/librte_vhost/vhost.h | 15 +- lib/librte_vhost/virtio_net.c | 598 +++++++++++++++++++++---- 5 files changed, 587 insertions(+), 110 deletions(-) -- 2.29.2