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 D0127A0543; Tue, 25 Oct 2022 10:29:24 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id A275840A89; Tue, 25 Oct 2022 10:29:24 +0200 (CEST) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by mails.dpdk.org (Postfix) with ESMTP id A4EFD400D5 for ; Tue, 25 Oct 2022 10:29:23 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1666686563; x=1698222563; h=from:to:cc:subject:date:message-id:in-reply-to: references; bh=31RKeL4RADOV6ihpdzNh0kbcxI4Q1aemyf4ZMPPIQLY=; b=lmnRIqcXsTDRhkNGHFPv5Ci0vgk67lu/TAEX9gJBenFWpI2clw3sYq71 zw1VZ9AMrdJx8tT3sIoCEMIQZNQXxh3IYHQ4Cs8RD+6Whv2TNd6VJZg6E b2loI3aQN1ZwdCYZa/b8by9cQtEOaf79tevM0f5SKMPT/z+GGuSuXQ7Vu 288YnXtApNkXwLcpeasj39cMfcnKswBIB++lQf/EBTU3oGS0uwYI9IFWs LzBX/4pNKnY7c0zDKPThQfTjxGNqMhWg1tzOMoUbjMrNkM/TvPUdNXBny uSnFOXT2RiUBEtjzorEpAN5t7h0I6gajfp8Ir7BKYTacREPbZ3BXcTyFV g==; X-IronPort-AV: E=McAfee;i="6500,9779,10510"; a="305234243" X-IronPort-AV: E=Sophos;i="5.95,211,1661842800"; d="scan'208";a="305234243" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 Oct 2022 01:29:22 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10510"; a="664833314" X-IronPort-AV: E=Sophos;i="5.95,211,1661842800"; d="scan'208";a="664833314" Received: from npg-dpdk-xuan-cbdma.sh.intel.com ([10.67.111.102]) by orsmga001.jf.intel.com with ESMTP; 25 Oct 2022 01:29:19 -0700 From: xuan.ding@intel.com To: maxime.coquelin@redhat.com, chenbo.xia@intel.com Cc: dev@dpdk.org, jiayu.hu@intel.com, xingguang.he@intel.com, weix.ling@intel.com, cheng1.jiang@intel.com, yuanx.wang@intel.com, wenwux.ma@intel.com, Xuan Ding Subject: [PATCH v8 0/2] vhost: introduce DMA vchannel unconfiguration Date: Tue, 25 Oct 2022 08:25:38 +0000 Message-Id: <20221025082540.100618-1-xuan.ding@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20220814140442.82525-1-xuan.ding@intel.com> References: <20220814140442.82525-1-xuan.ding@intel.com> 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 From: Xuan Ding This patchset introduces a new API rte_vhost_async_dma_unconfigure() to help user to manually free DMA vChannels finished to use. v8: * Check inflight packets release virtual channel. v7: * Add inflight packets processing. * Fix CI error. v6: * Move DMA unconfiguration to the end due to DMA devices maybe reused after destroy_device(). * Refine the doc to claim the DMA device should not be used in vhost after unconfiguration. v5: * Use mutex instead of spinlock. * Improve code readability. v4: * Rebase to 22.11 rc1. * Fix the usage of 'dma_ref_count' to make sure the specified DMA device is not used by any vhost ports before unconfiguration. v3: * Rebase to latest DPDK. * Refine some descriptions in the doc. * Fix one bug in the vhost example. v2: * Add spinlock protection. * Fix a memory leak issue. * Refine the doc. Xuan Ding (2): vhost: introduce DMA vchannel unconfiguration examples/vhost: unconfigure DMA vchannel doc/guides/prog_guide/vhost_lib.rst | 5 ++ doc/guides/rel_notes/release_22_11.rst | 5 ++ examples/vhost/main.c | 8 +++ lib/vhost/rte_vhost_async.h | 20 +++++++ lib/vhost/version.map | 3 ++ lib/vhost/vhost.c | 72 ++++++++++++++++++++++++-- 6 files changed, 108 insertions(+), 5 deletions(-) -- 2.17.1