On Tue, Nov 26, 2019 at 3:22 PM Neil Horman <nhor...@tuxdriver.com> wrote: > On Mon, Nov 25, 2019 at 05:13:14PM +0100, David Marchand wrote: > > So far, we did not pay attention to direct access to variables but they > > are part of the API/ABI too and should be clearly identified. > > > > Introduce a __rte_experimental_var tag and mark existing variables. > > > > Fixes: a4bcd61de82d ("buildtools: add script to check experimental API > > exports") > > Cc: sta...@dpdk.org > > > > Signed-off-by: David Marchand <david.march...@redhat.com> > > --- > > Quick patch to try to catch experimental variables. > > Not sure if we could use a single section, so please advise if there is > > better to do about this. > > > I don't see any definition of __rte_experimental_var here, won't the > preprocessor choke on this when you try to compile without that?
Sorry, not getting your point. If there is an issue, then it is the same as __rte_experimental. [snip] > > diff --git a/lib/librte_eal/common/include/rte_compat.h > > b/lib/librte_eal/common/include/rte_compat.h > > index 3eb33784b..3fd05179f 100644 > > --- a/lib/librte_eal/common/include/rte_compat.h > > +++ b/lib/librte_eal/common/include/rte_compat.h > > @@ -11,11 +11,16 @@ > > #define __rte_experimental \ > > __attribute__((deprecated("Symbol is not yet part of stable ABI"), \ > > section(".text.experimental"))) > > +#define __rte_experimental_var \ > > +__attribute__((deprecated("Symbol is not yet part of stable ABI"), \ > > +section(".data.experimental"))) > > > > #else > > > > #define __rte_experimental \ > > __attribute__((section(".text.experimental"))) > > +#define __rte_experimental_var \ > > +__attribute__((section(".data.experimental"))) > > > > #endif > > -- David Marchand