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 753DEA0C48; Wed, 7 Jul 2021 06:50:13 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 36BBE406FF; Wed, 7 Jul 2021 06:50:13 +0200 (CEST) Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by mails.dpdk.org (Postfix) with ESMTP id 759714069E for ; Wed, 7 Jul 2021 06:50:11 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10037"; a="209279833" X-IronPort-AV: E=Sophos;i="5.83,330,1616482800"; d="scan'208";a="209279833" Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Jul 2021 21:50:09 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.83,330,1616482800"; d="scan'208";a="486673136" Received: from npg_dpdk_virtio_jiayuhu_07.sh.intel.com ([10.67.119.25]) by FMSMGA003.fm.intel.com with ESMTP; 06 Jul 2021 21:50:08 -0700 From: Jiayu Hu To: dev@dpdk.org Cc: maxime.coquelin@redhat.com, chenbo.xia@intel.com, yinan.wang@intel.com, Jiayu Hu Date: Wed, 7 Jul 2021 07:18:04 -0400 Message-Id: <1625656687-40604-1-git-send-email-jiayu.hu@intel.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1622189463-392610-2-git-send-email-jiayu.hu@intel.com> References: <1622189463-392610-2-git-send-email-jiayu.hu@intel.com> Subject: [dpdk-dev] [PATCH v2 0/3] provide thread unsafe async registration functions 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" Lock protection is needed during the vhost notifies the application of device readiness, so the first patch adds lock protection. In addition, the second patch reworks async feature structure to improve readability. After performing locking, existed async vhost registration functions will cause deadlock, as they acquire lock too. The last patch provides thread unsafe registration functions to support calling within vhost callback functions. v2: * rework async feature structure * fix typo in commit log Jiayu Hu (3): vhost: fix lock on device readiness notification vhost: rework async feature struct vhost: add thread unsafe async registeration functions doc/guides/prog_guide/vhost_lib.rst | 12 +++ examples/vhost/main.c | 4 +- lib/vhost/rte_vhost_async.h | 63 +++++++++++---- lib/vhost/version.map | 4 + lib/vhost/vhost.c | 157 ++++++++++++++++++++++++++---------- lib/vhost/vhost_user.c | 5 +- 6 files changed, 183 insertions(+), 62 deletions(-) -- 2.7.4