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 97957A0C45; Thu, 22 Jul 2021 06:26:25 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 86AE24014D; Thu, 22 Jul 2021 06:26:24 +0200 (CEST) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by mails.dpdk.org (Postfix) with ESMTP id 3707040040 for ; Thu, 22 Jul 2021 06:26:23 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10052"; a="209664598" X-IronPort-AV: E=Sophos;i="5.84,259,1620716400"; d="scan'208";a="209664598" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 Jul 2021 21:26:22 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.84,259,1620716400"; d="scan'208";a="658668651" Received: from dpdk_jiangcheng.sh.intel.com ([10.67.119.149]) by fmsmga006.fm.intel.com with ESMTP; 21 Jul 2021 21:26:20 -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, Cheng Jiang Date: Thu, 22 Jul 2021 04:09:02 +0000 Message-Id: <20210722040907.20468-1-cheng1.jiang@intel.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210602042802.31943-1-cheng1.jiang@intel.com> References: <20210602042802.31943-1-cheng1.jiang@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH v7 0/5] vhost: handle memory hotplug for 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" When the guest memory is hotplugged, the vhost application which enables DMA acceleration must stop DMA transfers before the vhost re-maps the guest memory. This patch set is to provide an unsafe API to drain inflight pkts which are submitted to DMA engine in vhost async data path, and notify the vhost application of stopping DMA transfers. And enable it in vhost example. v7: * rebased on the latest codes * improved commit log v6: * removed unnecessary args for the new API * improved variable names and function names * added enable notification in set_mem_table * fixed vhost example queue clear process v5: * added fixes in 'vhost: fix async vhost ops return type' * improved git log, variable names and logs v4: * rebased on the latest codes v3: * added a patch to fix async ops return type * fixed async ops fail handler * updated the doc v2: * changed the patch structure Cheng Jiang (4): vhost: fix async vhost ops return type vhost: add unsafe API to clear packets in async vhost examples/vhost: handle memory hotplug for async vhost doc: update doc for queue clear API in vhost lib Jiayu Hu (1): vhost: handle memory hotplug for async vhost doc/guides/prog_guide/vhost_lib.rst | 5 + doc/guides/rel_notes/release_21_08.rst | 5 + examples/vhost/ioat.c | 4 +- examples/vhost/ioat.h | 4 +- examples/vhost/main.c | 55 ++++++++- examples/vhost/main.h | 1 + lib/vhost/rte_vhost_async.h | 30 ++++- lib/vhost/version.map | 1 + lib/vhost/vhost_user.c | 16 +++ lib/vhost/virtio_net.c | 152 ++++++++++++++++++++----- 10 files changed, 232 insertions(+), 41 deletions(-) -- 2.29.2