DPDK patches and discussions
 help / color / mirror / Atom feed
From: David Marchand <david.marchand@redhat.com>
To: Ray Kinsella <mdr@ashroe.eu>
Cc: Neil Horman <nhorman@tuxdriver.com>, dev <dev@dpdk.org>,
	 Thomas Monjalon <thomas@monjalon.net>,
	Andrew Rybchenko <arybchenko@solarflare.com>,
	 dpdk stable <stable@dpdk.org>,
	John McNamara <john.mcnamara@intel.com>,
	 Marko Kovacevic <marko.kovacevic@intel.com>,
	Qiming Yang <qiming.yang@intel.com>,
	 Wenzhuo Lu <wenzhuo.lu@intel.com>,
	Declan Doherty <declan.doherty@intel.com>,
	 Adrien Mazarguil <adrien.mazarguil@6wind.com>,
	Ferruh Yigit <ferruh.yigit@intel.com>,
	 Cristian Dumitrescu <cristian.dumitrescu@intel.com>
Subject: Re: [dpdk-dev] [RFC PATCH] mark experimental variables
Date: Tue, 26 Nov 2019 10:50:26 +0100	[thread overview]
Message-ID: <CAJFAV8ykk_3WyzAE_YxhRdeyOEdzgxwor4y5EvjErwdDp=tLgw@mail.gmail.com> (raw)
In-Reply-To: <23c3c0ff-6cf1-3aca-50b8-a89037afdcac@ashroe.eu>

On Tue, Nov 26, 2019 at 10:26 AM Ray Kinsella <mdr@ashroe.eu> wrote:
>
>
> My 2c is that it feels a little unweildy to have to annotate, every variable declaration.
> and also extern reference with __rte_experimental_var.
>
> Is there any easier way?

We use this framework so that the users are aware they are relying on
experimental API that can change overnight.
It would not happen if we could hide all of this behind accessors.
But here we reference them through macros / inlines with performance in mind.


This performance impact needs to be confirmed as a real requirement.
I caught some oddity like the librte_port stuff (with no in-tree
users, but different topic).


> > @@ -90,11 +90,15 @@ check_experimental_tags() { # <patch>
> >                               "headers ("current_file")";
> >                       ret = 1;
> >               }
> > -             if ($1 != "+__rte_experimental" || $2 != "") {
> > -                     print "__rte_experimental must appear alone on the line" \
> > -                             " immediately preceding the return type of a function."
> > -                     ret = 1;
> > +
> > +             if (NF == 1 && ($1 == "+__rte_experimental" ||
> > +                             $1 == "+__rte_experimental_var")) {
> > +                     next;
> >               }
> > +             print "__rte_experimental or __rte_experimental_var must " \
> > +                     "appear alone on the line immediately preceding the " \
> > +                     "return type of a function.";
>
> or variable?

Yes.


> > @@ -300,9 +300,10 @@ Note that marking an API as experimental is a multi step process.
> >  To mark an API as experimental, the symbols which are desired to be exported
> >  must be placed in an EXPERIMENTAL version block in the corresponding libraries'
> >  version map script.
> > -Secondly, the corresponding prototypes of those exported functions (in the
> > -development header files), must be marked with the ``__rte_experimental`` tag
> > -(see ``rte_compat.h``).
> > +Secondly, the corresponding prototypes of those exported functions (resp.
> > +variables) must be marked with the ``__rte_experimental`` (resp.
> > +``__rte_experimental_var``) tag in the development header files (see
> > +``rte_compat.h``).
>
> Suggest simplifying as follows (remove the resp.).
>
> Secondly, the corresponding prototypes of those exported functions (or
> variables) must be marked with the ``__rte_experimental`` (or
> ``__rte_experimental_var``) tag in the development header files (see
> ``rte_compat.h``).

"or" sounds better.


-- 
David Marchand


  reply	other threads:[~2019-11-26  9:50 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-25 16:13 David Marchand
2019-11-26  9:25 ` Ray Kinsella
2019-11-26  9:50   ` David Marchand [this message]
2019-11-26 14:15   ` Neil Horman
2019-11-26 14:22 ` Neil Horman
2019-11-27 20:45   ` David Marchand
2019-11-29 11:43     ` Neil Horman
2019-11-29 12:03       ` David Marchand
2019-12-02 15:20 ` [dpdk-dev] [PATCH] " David Marchand
2019-12-03  8:33   ` Andrew Rybchenko
2019-12-03 15:26   ` Neil Horman
2020-01-09 14:13   ` [dpdk-dev] [dpdk-stable] " Thomas Monjalon
2020-01-09 16:49     ` David Marchand
2023-06-12  2:49 ` [dpdk-dev] [RFC PATCH] " Stephen Hemminger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAJFAV8ykk_3WyzAE_YxhRdeyOEdzgxwor4y5EvjErwdDp=tLgw@mail.gmail.com' \
    --to=david.marchand@redhat.com \
    --cc=adrien.mazarguil@6wind.com \
    --cc=arybchenko@solarflare.com \
    --cc=cristian.dumitrescu@intel.com \
    --cc=declan.doherty@intel.com \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@intel.com \
    --cc=john.mcnamara@intel.com \
    --cc=marko.kovacevic@intel.com \
    --cc=mdr@ashroe.eu \
    --cc=nhorman@tuxdriver.com \
    --cc=qiming.yang@intel.com \
    --cc=stable@dpdk.org \
    --cc=thomas@monjalon.net \
    --cc=wenzhuo.lu@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).