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 41B1FA034F; Mon, 19 Jul 2021 10:27:19 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id B6D4F4069D; Mon, 19 Jul 2021 10:27:18 +0200 (CEST) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by mails.dpdk.org (Postfix) with ESMTP id 877D74068B for ; Mon, 19 Jul 2021 10:27:17 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10049"; a="274841373" X-IronPort-AV: E=Sophos;i="5.84,251,1620716400"; d="scan'208";a="274841373" Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 19 Jul 2021 01:27:16 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.84,251,1620716400"; d="scan'208";a="509279660" Received: from dpdk_jiangcheng.sh.intel.com ([10.67.119.149]) by fmsmga002.fm.intel.com with ESMTP; 19 Jul 2021 01:27:14 -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: Mon, 19 Jul 2021 08:10:17 +0000 Message-Id: <20210719081022.12949-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 v6 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. 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 codess 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 inflight packets 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 | 3 + lib/vhost/vhost_user.c | 16 +++ lib/vhost/virtio_net.c | 152 ++++++++++++++++++++----- 10 files changed, 234 insertions(+), 41 deletions(-) -- 2.29.2