From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 15F08A00BE; Tue, 28 Apr 2020 17:30:12 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id EC62F1D602; Tue, 28 Apr 2020 17:30:11 +0200 (CEST) Received: from wnew2-smtp.messagingengine.com (wnew2-smtp.messagingengine.com [64.147.123.27]) by dpdk.org (Postfix) with ESMTP id 0C1131D5FC for ; Tue, 28 Apr 2020 17:30:10 +0200 (CEST) Received: from compute7.internal (compute7.nyi.internal [10.202.2.47]) by mailnew.west.internal (Postfix) with ESMTP id D512D764; Tue, 28 Apr 2020 11:30:07 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute7.internal (MEProxy); Tue, 28 Apr 2020 11:30:08 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h= from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding:content-type; s=fm1; bh= XtopPAdVVpdIl2tvaI3vHfzXJIFPF53EiOXqOtyX42E=; b=A2myTXDRXsxJiF61 TAgRM9fmbVjWb/2B83bWwLpif4ai1m4s9lS91h5DDRArPhN7JHfpt3p4u36HbJxs lqJL6Zg5FFkQ8Yo3Nfu9eudJTET7qaMgHkfqiWYCP6APBzf6m580tJmyRadPn7C1 5pB2cgaEPaC6z524JvBHadUJs0hELhqRxgg8Y+E6NJJiWMosaT/BkP/fXJe+w2nm DCLO1js12IJ4Fiau1zdV2OOPMfLQBs69LYhqt6giMuGXNLuVGzdaQUGetMd8VQr5 Kruc39cDChaFY+4yubxwdOSSKgDyhqkZyQ0NHfz3W2X/hoFVzaFfscsmacxJyGx8 8jsi0A== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; bh=XtopPAdVVpdIl2tvaI3vHfzXJIFPF53EiOXqOtyX4 2E=; b=zgSao2urqgl+2QnqCXa/ZX/1tRj7h6DG4DZBXGJx33jc6bd4LC8wqqiOe 0zYOTMlOMas2b7R+H00H3uN44jZ9ScIwquKHhIvSI38ml7EYUKKIJnHFQXyJ1Cb4 yHE/MpgtPXpL6XxIpjbbuh2aeXtl+xzE6UlGHwTcvLaeVvUFkCFsc3y7VQlWJ6Zx fSlc31csa9aYrVC1jV3ZMVCvCE8TpsZFXOtcjvRy3zzyW9XcWu6/E2cV+B1hpK4J gN08JIYjlsvoYbHckQw0ediBkTfpQycMbG/gQG7Wy7XOqG1g2rvZLcOYZKgyc48B oOgSLR4pvg+4OCPqbf8LXuKJ5GXhg== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduhedriedugdekkecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefhvffufffkjghfggfgtgesthfuredttddtvdenucfhrhhomhepvfhhohhmrghs ucfoohhnjhgrlhhonhcuoehthhhomhgrshesmhhonhhjrghlohhnrdhnvghtqeenucffoh hmrghinhepphgrshhtvggsihhnrdgtohhmpdguphgukhdrohhrghenucfkphepjeejrddu feegrddvtdefrddukeegnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrg hilhhfrhhomhepthhhohhmrghssehmohhnjhgrlhhonhdrnhgvth X-ME-Proxy: Received: from xps.localnet (184.203.134.77.rev.sfr.net [77.134.203.184]) by mail.messagingengine.com (Postfix) with ESMTPA id EC8DD3280065; Tue, 28 Apr 2020 11:30:04 -0400 (EDT) From: Thomas Monjalon To: "Dumitrescu, Cristian" Cc: "Yigit, Ferruh" , Nithin Dabilpuram , "Singh, Jasvinder" , Andrew Rybchenko , "dev@dpdk.org" , "jerinj@marvell.com" , "kkanas@marvell.com" , Nithin Dabilpuram , "Kinsella, Ray" , Neil Horman , Luca Boccassi , Kevin Traynor , David Marchand , "Richardson, Bruce" Date: Tue, 28 Apr 2020 17:30:02 +0200 Message-ID: <7028049.mr9Zh2SJbS@thomas> In-Reply-To: References: <20200330160019.29674-1-ndabilpuram@marvell.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Subject: Re: [dpdk-dev] [PATCH v4 1/4] ethdev: add tm support for shaper config in pkt mode X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 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" 27/04/2020 18:28, Dumitrescu, Cristian: > From: Yigit, Ferruh > > On 4/27/2020 10:19 AM, Dumitrescu, Cristian wrote: > > > From: Yigit, Ferruh > > >> Hi Nithin, > > >> > > >> It looks like patch is causing ABI break, I am getting following warning [1], > > >> can you please check? > > >> > > >> [1] > > >> https://pastebin.com/XYNFg14u > > > > > > > > > Hi Ferruh, > > > > > > The RTE_TM API is marked as experimental, but it looks that this was not > > correctly marked when __rte_experimental ABI checker was introduced. > > > > > > It is marked as experimental at the top of the rte_tm.h, similarly to other > > APIs introduced around same time, but it was not correctly picked up by the > > ABI check procedure when later introduced, so __rte_experimental was not > > added to every function. > > > > > > > :( > > > > Is it time to mature them? > > > > As you said they are not marked as experimental both in header file > > (function > > declarations) and .map file. > > > > The problem is, they are not marked as experimental in DPDK_20.0 ABI > > (v19.11), > > so marking them as experimental now will break the ABI. Not sure what to > > do, > > cc'ed a few ABI related names for comment. > > > > For me, we need to proceed as the experimental tag removed and APIs > > become > > mature starting from v19.11, since this is what happened in practice, and > > remove > > a few existing being experimental references in the doxygen comments. > > > > Ray, Neil, David, Luca, Kevin, what do you think? > > Hi Ferruh, > > IMO your proposed approach is fixing the wrong problem and is > probably not the right way of doing things. > > This API is correctly marked as experimental in the header > file rte_tm.h and in the MAINTAINERS file, in rte_tm.h: * @warning * @b EXPERIMENTAL: this API may change without prior notice in MAINTAINERS: Traffic Management API - EXPERIMENTAL M: Cristian Dumitrescu T: git://dpdk.org/next/dpdk-next-qos F: lib/librte_ethdev/rte_tm* > therefore it should remain experimental, in rte_ethdev_version.map: before 19.11: DPDK_17.08 { since 19.11: DPDK_20.0 { When adding rte_tm in 17.08: http://git.dpdk.org/dpdk/diff/lib/librte_ether/rte_ether_version.map?id=5d109deffa In 17.08, early July 2017, the first EXPERIMENTAL section was declared in EAL: http://git.dpdk.org/dpdk/diff/lib/librte_eal/linuxapp/eal/rte_eal_version.map?id=a3ee360f444 When adding rte_mtr in 17.11, all functions are made experimental: http://git.dpdk.org/dpdk/diff/lib/librte_ether/rte_ethdev_version.map?id=6613ffe1 In 18.02, the tag __rte_experimental was introduced: http://git.dpdk.org/dpdk/commit/?id=7d540a3e735 and functions are marked (including rte_mtr but not rte_tm): http://git.dpdk.org/dpdk/commit/?id=77b7b81e32e > as more changes are expected from the people like Nithin and others > currently upstreaming drivers for it. They are doing changes in the API introduced 3 years ago. > For some reason, the __rte_experimental tags were not added to > this file when the ABI checker was introduced, > and this is the real problem that should be fixed. The mistake was done 2 years ago. As maintainer of rte_tm code, you are expected to notice the issue. As maintainer of rte_mtr code, you were expected to review the change on the mtr functions being marked as experimental. I am sorry that it took 2 years to discover the gap. We can fix the ABI in the ABI-breakage window: in 20.11.