diff mbox

[dpdk-dev,PATCHv4,2/5] compat: Add __experimental macro

Message ID 20171213151728.16747-3-nhorman@tuxdriver.com (mailing list archive)
State Superseded, archived
Delegated to: Thomas Monjalon
Headers show


Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Neil Horman Dec. 13, 2017, 3:17 p.m. UTC
The __experimental macro tags a given exported function as being part of
the EXPERIMENTAL api.  Use of this tag will cause any caller of the
function (that isn't removed by dead code elimination) to emit a warning
that the user is making use of an API whos stabilty isn't guaranteed.
It also places the function in the .text.experimental section, which is
used to validate the tag against the corresponding library version map

Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
CC: Thomas Monjalon <thomas@monjalon.net>
CC: "Mcnamara, John" <john.mcnamara@intel.com>
CC: Bruce Richardson <bruce.richardson@intel.com>
 lib/librte_compat/rte_compat.h | 11 +++++++++++
 1 file changed, 11 insertions(+)


Thomas Monjalon Jan. 21, 2018, 6:37 p.m. UTC | #1

I know I should have spotted these comments earlier,
I'm sorry to be late on this review.

13/12/2017 16:17, Neil Horman:
> +#define __experimental \

These macros should be in the DPDK namespace:

> +__attribute__((deprecated("Symbol is not yet part of stable abi"), \

Nit: s/abi/ABI/
diff mbox


diff --git a/lib/librte_compat/rte_compat.h b/lib/librte_compat/rte_compat.h
index 41e8032ba..450dd542c 100644
--- a/lib/librte_compat/rte_compat.h
+++ b/lib/librte_compat/rte_compat.h
@@ -101,5 +101,16 @@ 
+#define __experimental \
+__attribute__((deprecated("Symbol is not yet part of stable abi"), \
+#define __experimental \
 #endif /* _RTE_COMPAT_H_ */