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 8F31CA0547; Thu, 9 Sep 2021 13:20:06 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 751334013F; Thu, 9 Sep 2021 13:20:06 +0200 (CEST) Received: from mail-108-mta21.mxroute.com (mail-108-mta21.mxroute.com [136.175.108.21]) by mails.dpdk.org (Postfix) with ESMTP id 47D5440041 for ; Thu, 9 Sep 2021 13:20:05 +0200 (CEST) Received: from filter004.mxroute.com ([149.28.56.236] filter004.mxroute.com) (Authenticated sender: mN4UYu2MZsgR) by mail-108-mta21.mxroute.com (ZoneMTA) with ESMTPSA id 17bca49348700074ba.001 for (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES128-GCM-SHA256); Thu, 09 Sep 2021 11:20:00 +0000 X-Zone-Loop: 495e9e79af11086daa6d1ab230d9a13efe710073905c X-Originating-IP: [149.28.56.236] DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=ashroe.eu; s=x; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:MIME-Version:Date: Message-ID:From:References:Cc:To:Subject:Sender:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=cOmZbMgbz08htLJRstajjrCGxQSIGw08cro5QHWtT2U=; b=A2ASz15lvq3nEbcHa0eKgc8L9u vEYPYBkwD7fPTucoiI4/Aq+15VCMBF6nshsgt/hwlBTsjnxdkzfcFwB5uEm04PGy3BJ6yYFxdbT7x 9yiIxgMv2TO7NuIPaWExcJ3yC/wpzhsPg0gfxN+oZ6OrsziWvZ1O5myzgUr55FQ9p5QuhRgm9fKmh /RP6BSgS8yBLysB1fX36Z4E6USNJwkbwu2bVv0S+EnRs4cAWCIKjiqWabsdB4vx/ARa2jnzWDV5l9 oIHYGAMi4/MUt1UGymxR/VI3XzeJTqyAMNpht88UBE0fwpjsNcf7iJEO6uL6CVjD65xf5ySx+YPit WBCafi/A==; To: "Xia, Chenbo" , Kevin Traynor , "maxime.coquelin@redhat.com" Cc: "Liu, Changpeng" , "dev@dpdk.org" , Thomas Monjalon , David Marchand , "Yigit, Ferruh" References: <20210907025800.55680-1-chenbo.xia@intel.com> <202f3e82-39ad-86d7-3f8a-ab1787c4795c@redhat.com> From: "Kinsella, Ray" Message-ID: <9b736bf0-c989-c890-c9de-1a2ae48c2346@ashroe.eu> Date: Thu, 9 Sep 2021 12:19:56 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.14.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-AuthUser: mdr@ashroe.eu Subject: Re: [dpdk-dev] [PATCH] vhost: promote some APIs to stable 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" On 09/09/2021 03:13, Xia, Chenbo wrote: > Hi Kevin, > >> -----Original Message----- >> From: Kevin Traynor >> Sent: Wednesday, September 8, 2021 8:01 PM >> To: Xia, Chenbo ; dev@dpdk.org; >> maxime.coquelin@redhat.com >> Cc: Liu, Changpeng ; mdr@ashroe.eu >> Subject: Re: [dpdk-dev] [PATCH] vhost: promote some APIs to stable >> >> On 07/09/2021 03:58, Chenbo Xia wrote: >>> As reported by symbol bot, APIs listed in this patch have been >>> experimental for more than two years. This patch promotes these >>> 18 APIs to stable. >>> >> >> Patch lgtm. One question about a possible follow on below. >> >> Acked-by: Kevin Traynor >> >>> Signed-off-by: Chenbo Xia >>> --- >>> lib/vhost/rte_vhost.h | 13 ------------- >>> lib/vhost/rte_vhost_crypto.h | 5 ----- >>> lib/vhost/version.map | 36 ++++++++++++++++++------------------ >>> 3 files changed, 18 insertions(+), 36 deletions(-) >>> > > [...] > >>> diff --git a/lib/vhost/version.map b/lib/vhost/version.map >>> index c92a9d4962..8ebde3f694 100644 >>> --- a/lib/vhost/version.map >>> +++ b/lib/vhost/version.map >>> @@ -13,6 +13,13 @@ DPDK_22 { >>> rte_vdpa_reset_stats; >>> rte_vdpa_unregister_device; >>> rte_vhost_avail_entries; >>> + rte_vhost_clr_inflight_desc_packed; >>> + rte_vhost_clr_inflight_desc_split; >>> + rte_vhost_crypto_create; >>> + rte_vhost_crypto_fetch_requests; >>> + rte_vhost_crypto_finalize_requests; >>> + rte_vhost_crypto_free; >>> + rte_vhost_crypto_set_zero_copy; >>> rte_vhost_dequeue_burst; >>> rte_vhost_driver_attach_vdpa_device; >>> rte_vhost_driver_callback_register; >>> @@ -20,13 +27,17 @@ DPDK_22 { >>> rte_vhost_driver_disable_features; >>> rte_vhost_driver_enable_features; >>> rte_vhost_driver_get_features; >>> + rte_vhost_driver_get_protocol_features; >>> + rte_vhost_driver_get_queue_num; >>> rte_vhost_driver_get_vdpa_device; >>> rte_vhost_driver_register; >>> rte_vhost_driver_set_features; >>> + rte_vhost_driver_set_protocol_features; >>> rte_vhost_driver_start; >>> rte_vhost_driver_unregister; >>> rte_vhost_enable_guest_notification; >>> rte_vhost_enqueue_burst; >>> + rte_vhost_extern_callback_register; >>> rte_vhost_get_ifname; >>> rte_vhost_get_log_base; >>> rte_vhost_get_mem_table; >>> @@ -35,15 +46,22 @@ DPDK_22 { >>> rte_vhost_get_numa_node; >>> rte_vhost_get_queue_num; >>> rte_vhost_get_vdpa_device; >>> + rte_vhost_get_vhost_ring_inflight; >>> rte_vhost_get_vhost_vring; >>> rte_vhost_get_vring_base; >>> + rte_vhost_get_vring_base_from_inflight; >>> rte_vhost_get_vring_num; >> >>> rte_vhost_gpa_to_vva; >> >> Can this ^^^ be also removed now that rte_vhost_va_from_guest_pa() is >> promoted to non-experimental? It is marked as deprecated in API (see >> below) but i don't see anything in the deprecation documentation. > > Good point. I think it can be removed now. But we didn't send the deprecation > notice last release. I am not sure if it's ok to remove it this release. > > @Ray & Maxime, > > What do you think? I think since this API is unsafe and the safe version is > promoted, it makes sense to remove this. Strictly speaking there should have been depreciation notice. However if the API has been marked depreciated since 2018 and _is_ unsafe. You'd have to imagine that is sufficient to warrant removal at this stage. Thomas, David and Ferruh - any inputs/comments or objections? > > Thanks, > Chenbo > >> >> commit 9553e6e408883b3677e208dc66049bcd7f758529 >> Author: Maxime Coquelin >> Date: Wed Mar 14 17:31:25 2018 +0100 >> >> vhost: deprecate unsafe GPA translation API >> >> This patch marks rte_vhost_gpa_to_vva() as deprecated because >> it is unsafe. Application relying on this API should move >> to the new rte_vhost_va_from_guest_pa() API, and check >> returned length to avoid out-of-bound accesses. >> >> This issue has been assigned CVE-2018-1059. >> >> Signed-off-by: Maxime Coquelin >> >> >>> rte_vhost_host_notifier_ctrl; >>> rte_vhost_log_used_vring; >>> rte_vhost_log_write; >>> rte_vhost_rx_queue_count; >>> + rte_vhost_set_inflight_desc_packed; >>> + rte_vhost_set_inflight_desc_split; >>> + rte_vhost_set_last_inflight_io_packed; >>> + rte_vhost_set_last_inflight_io_split; >>> rte_vhost_set_vring_base; >>> + rte_vhost_va_from_guest_pa; >>> rte_vhost_vring_call; >>> >>> local: *; >>> @@ -52,25 +70,7 @@ DPDK_22 { >>> EXPERIMENTAL { >>> global: >>> >>> - rte_vhost_driver_get_protocol_features; >>> - rte_vhost_driver_get_queue_num; >>> - rte_vhost_crypto_create; >>> rte_vhost_crypto_driver_start; >>> - rte_vhost_crypto_free; >>> - rte_vhost_crypto_fetch_requests; >>> - rte_vhost_crypto_finalize_requests; >>> - rte_vhost_crypto_set_zero_copy; >>> - rte_vhost_va_from_guest_pa; >>> - rte_vhost_extern_callback_register; >>> - rte_vhost_driver_set_protocol_features; >>> - rte_vhost_set_inflight_desc_split; >>> - rte_vhost_set_inflight_desc_packed; >>> - rte_vhost_set_last_inflight_io_split; >>> - rte_vhost_set_last_inflight_io_packed; >>> - rte_vhost_clr_inflight_desc_split; >>> - rte_vhost_clr_inflight_desc_packed; >>> - rte_vhost_get_vhost_ring_inflight; >>> - rte_vhost_get_vring_base_from_inflight; >>> rte_vhost_slave_config_change; >>> rte_vhost_async_channel_register; >>> rte_vhost_async_channel_unregister; >>> >