From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Monjalon Subject: Re: [PATCH v2 2/4] ethdev: add siblings iterators Date: Wed, 03 Apr 2019 01:37:44 +0200 Message-ID: <4060275.r8SWH6iRtW@xps> References: <20181130002716.27325-1-thomas@monjalon.net> <1668070.OiOMRC6GPs@xps> <387091f6-9a9a-6645-9cbd-89dc306ff202@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7Bit Cc: David Marchand , dev , Andrew Rybchenko To: Ferruh Yigit Return-path: Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) by dpdk.org (Postfix) with ESMTP id 3247B1B108 for ; Wed, 3 Apr 2019 01:37:48 +0200 (CEST) In-Reply-To: <387091f6-9a9a-6645-9cbd-89dc306ff202@intel.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 03/04/2019 01:35, Ferruh Yigit: > On 4/1/2019 9:09 AM, Thomas Monjalon wrote: > > 01/04/2019 08:46, David Marchand: > >> On Mon, Apr 1, 2019 at 4:16 AM Thomas Monjalon wrote: > >> > >>> 19/03/2019 19:04, Ferruh Yigit: > >>>> On 3/19/2019 5:34 PM, Thomas Monjalon wrote: > >>>>>>> +uint16_t __rte_experimental > >>>>>> > >>>>>> Do we need _rte_experimental on function definitions? I guess only in > >>> .h file, > >>>>>> function declaration is enough. > >>>>> > >>>>> Yes we need them both in .h and .c files. > >>>> > >>>> Why we need them in .c file? > >>>> I think the compiler is interested in ones in .h file, because of the > >>>> experimental checks. > >>> > >>> We need the tag in .c file because a check is done in the ELF object > >>> by buildtools/check-experimental-syms.sh > >>> > >> > >> ? > >> The attribute should be inherited from the declaration in the header. > >> If you have a case where it does not work, I'd like to look at it. > > > > I don't know such case, it was just a belief. > > Putting the __rte_experimental tag into header files should be sufficient. > > - buildtools/check-experimental-syms.sh > checks if symbols in .map file are marked with __rte_experimental, both putting > the tag to the symbol in .c file or .h file is working. > > - tag should be in header file so that application using it can get the warning. > > Briefly, __rte_experimental needs to be in .h file, it is optional to have it in > .c, I am for keeping it only in .h file function declaration. I agree As I said below, we can remove all experimental tags from .c files in a separate patch. > > If we can confirm it works well with tag in headers only, > > I suggest we remove all of them at once. > > For this patch, I prefer being on the safe side for now.