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 6A17CA00BE; Mon, 27 Apr 2020 19:00:07 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 42FC61BEA6; Mon, 27 Apr 2020 19:00:07 +0200 (CEST) Received: from mail-io1-f65.google.com (mail-io1-f65.google.com [209.85.166.65]) by dpdk.org (Postfix) with ESMTP id 8CEA81BE83 for ; Mon, 27 Apr 2020 19:00:06 +0200 (CEST) Received: by mail-io1-f65.google.com with SMTP id i3so19592814ioo.13 for ; Mon, 27 Apr 2020 10:00:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=fIhFLFtt/5hbqyq+3usFXJXHHIGieQmy9aar88kPrUs=; b=hgpANNXhKUSk83r/ZYKTCzj7BE75gliZn56C5jFCnlKjM4goL1wgOLweYuVKaBfFWa K7l4FAynxOT35VV2CLP6VdMwl4UVGrr4cUimzNrqz6d3zWslqChvTx8YPKSyePxLbz9y NPiQx8gfBY+cvqWplShPoD9ytBDSIxx2rqvFhHsHItB7+DJYlhpSJkDHy/1IjCgdYtYd AbR03en+EQxq9driGwHOR9CgeS/RBwbEh3urM6bZHqHZRvkgND3XX35NIYtGR0PoB0pT aWr6hCwfQUjDTjZSdg7XaH6IjChqZbdQl0rPd9tJaT+HuReBet0fpXUvRERnUgkFyYq7 xrmw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=fIhFLFtt/5hbqyq+3usFXJXHHIGieQmy9aar88kPrUs=; b=Y+XY/kIZwqDigI+/0ul9NeYDMVu18RCZxBF0OGqyTNizxyDI0qN8MbHzgrEGBGuYJI 8Mu2VvcXeinxppVu3E6eepVAu6Lp7NmYwvln2vjEQlzpSHnbXPGPNM9BJW0pRfEboysH 7jN0vc4aA8A/7oI2XTH6vWND6eXLwupQDkwD0BltGGDuRSLXqPcWtB1DQu2eMzfYWs6E 0oFgvAHYD61/R+agYQzPqKWvqNuoXZV2cI5R64si+ebZ6cTnyttiD1dv1K2pTzvLrWYo djepfzHt69iNfF1alvryr0BLj3SulIInyF21F/g78pcoucB+1qoaqjMhv19HzRYTQZhz zJvA== X-Gm-Message-State: AGi0PuZR0gbCQ4TDS8SSsn6yOkVpH4hh6Q1s7Z+GHN988IYBuy5HLiCx eLts9MyVhzWoqxvLHszxjWvT3noKRfh94UGZzltrInc2Rwo= X-Google-Smtp-Source: APiQypJ/7vTqkqJJnpH5U7cVBsopZG5VmOabg1EucbfcfcDQYGu+HWwPWaRKN990q9TjEnrwc0iShj3iKdXbPHoHuH4= X-Received: by 2002:a02:ac94:: with SMTP id x20mr20843231jan.133.1588006804469; Mon, 27 Apr 2020 10:00:04 -0700 (PDT) MIME-Version: 1.0 References: <20200330160019.29674-1-ndabilpuram@marvell.com> <20200422172104.23099-1-nithind1988@gmail.com> In-Reply-To: From: Jerin Jacob Date: Mon, 27 Apr 2020 22:29:48 +0530 Message-ID: To: Ferruh Yigit Cc: "Dumitrescu, Cristian" , Nithin Dabilpuram , "Singh, Jasvinder" , Thomas Monjalon , Andrew Rybchenko , "dev@dpdk.org" , "jerinj@marvell.com" , "kkanas@marvell.com" , Nithin Dabilpuram , "Kinsella, Ray" , Neil Horman , Luca Boccassi , Kevin Traynor , David Marchand , Bruce Richardson Content-Type: text/plain; charset="UTF-8" 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" On Mon, Apr 27, 2020 at 10:19 PM Ferruh Yigit wrote: > > On 4/27/2020 5:29 PM, Jerin Jacob wrote: > > On Mon, Apr 27, 2020 at 9:42 PM Ferruh Yigit wrote: > >> > >> On 4/27/2020 10:19 AM, Dumitrescu, Cristian wrote: > >>> > >>> > >>>> -----Original Message----- > >>>> From: Yigit, Ferruh > >>>> Sent: Saturday, April 25, 2020 9:09 PM > >>>> To: Dumitrescu, Cristian ; Nithin Dabilpuram > >>>> ; Singh, Jasvinder ; > >>>> Thomas Monjalon ; Andrew Rybchenko > >>>> > >>>> Cc: dev@dpdk.org; jerinj@marvell.com; kkanas@marvell.com; Nithin > >>>> Dabilpuram > >>>> Subject: Re: [PATCH v4 1/4] ethdev: add tm support for shaper config in pkt > >>>> mode > >>>> > >>>> On 4/24/2020 11:28 AM, Dumitrescu, Cristian wrote: > >>>>> > >>>>> > >>>>>> -----Original Message----- > >>>>>> From: Nithin Dabilpuram > >>>>>> Sent: Wednesday, April 22, 2020 6:21 PM > >>>>>> To: Singh, Jasvinder ; Dumitrescu, Cristian > >>>>>> ; Thomas Monjalon > >>>>>> ; Yigit, Ferruh ; Andrew > >>>>>> Rybchenko > >>>>>> Cc: dev@dpdk.org; jerinj@marvell.com; kkanas@marvell.com; Nithin > >>>>>> Dabilpuram > >>>>>> Subject: [PATCH v4 1/4] ethdev: add tm support for shaper config in pkt > >>>>>> mode > >>>>>> > >>>>>> From: Nithin Dabilpuram > >>>>>> > >>>>>> Some NIC hardware support shaper to work in packet mode i.e > >>>>>> shaping or ratelimiting traffic is in packets per second (PPS) as > >>>>>> opposed to default bytes per second (BPS). Hence this patch > >>>>>> adds support to configure shared or private shaper in packet mode, > >>>>>> provide rate in PPS and add related tm capabilities in port/level/node > >>>>>> capability structures. > >>>>>> > >>>>>> This patch also updates tm port/level/node capability structures with > >>>>>> exiting features of scheduler wfq packet mode, scheduler wfq byte mode > >>>>>> and private/shared shaper byte mode. > >>>>>> > >>>>>> SoftNIC PMD is also updated with new capabilities. > >>>>>> > >>>>>> Signed-off-by: Nithin Dabilpuram > >>>>>> --- > >>>>>> v3..v4: > >>>>>> - Update text under packet_mode as per Cristian. > >>>>>> - Update rte_eth_softnic_tm.c based on Jasvinder's comments. > >>>>>> - Add error enum > >>>> RTE_TM_ERROR_TYPE_SHAPER_PROFILE_PACKET_MODE > >>>>>> - Fix shaper_profile_check() with packet mode check > >>>>>> - Fix typo's > >>>>>> > >>>>> > >>>>> Acked-by: Cristian Dumitrescu > >>>>> > >>>> > >>>> 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. > > > > I think, accidentally we can not make a library as NON-experimental. > > TM never went through experimental to mature transition(see git log > > lib/librte_ethdev/rte_tm.h) > > It was a bug to not mark as experimental in each function in the ABI process. > > Some of the features like packet marking are not even implemented by any HW. > > I think, we can make API stable only all the features are implemented > > by one or two HW. > > Fair enough, specially if the API is not ready yet. > > But they were part of stable ABI, and marking them as experimental now will > break the old applications using these APIs. it is still marked as EXPERIMENTAL everywhere and API is not ready yet. Anyway, we need to break the ABI to make it work on various HW. I am not sure what to do? IMO, We need to send a patch as Fixes: for the bug of not adding __rte_experimental in each function. Traffic Management API - EXPERIMENTAL M: Cristian Dumitrescu T: git://dpdk.org/next/dpdk-next-qos F: lib/librte_ethdev/rte_tm* > > > > >> > >> Ray, Neil, David, Luca, Kevin, what do you think? >