[dpdk-dev] [PATCH] eal: mark version parts API as experimental

Thomas Monjalon thomas at monjalon.net
Wed Mar 17 16:15:35 CET 2021


Some functions were introduced in DPDK 21.05 to query the version parts
(prefix, year, month, minor, suffix, release) at runtime.
Per guidelines, these new public functions must be marked with
__rte_experimental and ABI versioned as EXPERIMENTAL.

Fixes: 5b637a848195 ("eal: fix querying DPDK version at runtime")
Cc: stable at dpdk.org

Suggested-by: David Marchand <david.marchand at redhat.com>
Signed-off-by: Thomas Monjalon <thomas at monjalon.net>
---
 lib/librte_eal/include/rte_version.h |  7 +++++++
 lib/librte_eal/version.map           | 14 ++++++++------
 2 files changed, 15 insertions(+), 6 deletions(-)

diff --git a/lib/librte_eal/include/rte_version.h b/lib/librte_eal/include/rte_version.h
index 736c5703be..b06a62e7a2 100644
--- a/lib/librte_eal/include/rte_version.h
+++ b/lib/librte_eal/include/rte_version.h
@@ -18,6 +18,7 @@ extern "C" {
 #include <string.h>
 #include <stdio.h>
 #include <rte_common.h>
+#include <rte_compat.h>
 
 /**
  * Macro to compute a version number usable for comparisons
@@ -36,31 +37,37 @@ extern "C" {
 /**
  * Function to return DPDK version prefix string
  */
+__rte_experimental
 const char *rte_version_prefix(void);
 
 /**
  * Function to return DPDK version year
  */
+__rte_experimental
 unsigned int rte_version_year(void);
 
 /**
  * Function to return DPDK version month
  */
+__rte_experimental
 unsigned int rte_version_month(void);
 
 /**
  * Function to return DPDK minor version number
  */
+__rte_experimental
 unsigned int rte_version_minor(void);
 
 /**
  * Function to return DPDK version suffix for any release candidates
  */
+__rte_experimental
 const char *rte_version_suffix(void);
 
 /**
  * Function to return DPDK version release candidate value
  */
+__rte_experimental
 unsigned int rte_version_release(void);
 
 /**
diff --git a/lib/librte_eal/version.map b/lib/librte_eal/version.map
index 756c60ed1d..48a2b55d57 100644
--- a/lib/librte_eal/version.map
+++ b/lib/librte_eal/version.map
@@ -200,12 +200,6 @@ DPDK_21 {
 	rte_uuid_parse;
 	rte_uuid_unparse;
 	rte_version;
-	rte_version_minor;
-	rte_version_month;
-	rte_version_prefix;
-	rte_version_release;
-	rte_version_suffix;
-	rte_version_year;
 	rte_vfio_clear_group;
 	rte_vfio_container_create;
 	rte_vfio_container_destroy;
@@ -419,6 +413,14 @@ EXPERIMENTAL {
 	rte_thread_tls_key_delete;
 	rte_thread_tls_value_get;
 	rte_thread_tls_value_set;
+
+	# added in 21.05
+	rte_version_minor;
+	rte_version_month;
+	rte_version_prefix;
+	rte_version_release;
+	rte_version_suffix;
+	rte_version_year;
 };
 
 INTERNAL {
-- 
2.30.1



More information about the dev mailing list