eal: promote some experimental functions as stable
authorThomas Monjalon <thomas@monjalon.net>
Thu, 18 Apr 2019 00:30:58 +0000 (02:30 +0200)
committerThomas Monjalon <thomas@monjalon.net>
Sun, 21 Apr 2019 17:11:37 +0000 (19:11 +0200)
The function rte_eal_cleanup() was introduced more than one year ago,
in DPDK 18.02. It is no longer experimental, allowing
pdump, proc-info and hotplug_mp apps to not need any experimental API.

The function rte_ctrl_thread_create() was introduced one year ago
in DPDK 18.05. It is no longer experimental, allowing
KNI PMD and TEP example to not need any experimental API.

The functions rte_socket_count() and rte_socket_id_by_idx() were
introduced one year ago in DPDK 18.05. They are no longer experimental.

The function rte_dev_is_probed() was introduced half a year ago
in DPDK 18.11. It is no longer experimental.

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Kevin Traynor <ktraynor@redhat.com>
17 files changed:
app/pdump/Makefile
app/pdump/meson.build
app/proc-info/Makefile
app/proc-info/meson.build
drivers/net/kni/Makefile
drivers/net/kni/meson.build
examples/multi_process/hotplug_mp/Makefile
examples/tep_termination/Makefile
examples/tep_termination/meson.build
lib/librte_eal/common/eal_common_dev.c
lib/librte_eal/common/eal_common_lcore.c
lib/librte_eal/common/eal_common_thread.c
lib/librte_eal/common/include/rte_dev.h
lib/librte_eal/common/include/rte_eal.h
lib/librte_eal/common/include/rte_lcore.h
lib/librte_eal/linux/eal/eal.c
lib/librte_eal/rte_eal_version.map

index bd3c208..e6b9eea 100644 (file)
@@ -7,7 +7,6 @@ ifeq ($(CONFIG_RTE_LIBRTE_PDUMP),y)
 
 APP = dpdk-pdump
 
-CFLAGS += -DALLOW_EXPERIMENTAL_API
 CFLAGS += $(WERROR_FLAGS)
 
 # all source are stored in SRCS-y
index 116c27f..7bb908e 100644 (file)
@@ -2,5 +2,4 @@
 # Copyright(c) 2018 Intel Corporation
 
 sources = files('main.c')
-allow_experimental_apis = true
 deps += ['ethdev', 'kvargs', 'pdump']
index 9e87f52..214f3f5 100644 (file)
@@ -5,7 +5,6 @@ include $(RTE_SDK)/mk/rte.vars.mk
 
 APP = dpdk-procinfo
 
-CFLAGS += -DALLOW_EXPERIMENTAL_API
 CFLAGS += $(WERROR_FLAGS)
 
 # all source are stored in SRCS-y
index 866b390..f050c4a 100644 (file)
@@ -2,5 +2,4 @@
 # Copyright(c) 2018 Intel Corporation
 
 sources = files('main.c')
-allow_experimental_apis = true
 deps += ['ethdev', 'metrics', 'security']
index 562e8d2..01eaef0 100644 (file)
@@ -10,7 +10,6 @@ LIB = librte_pmd_kni.a
 
 CFLAGS += -O3
 CFLAGS += $(WERROR_FLAGS)
-CFLAGS += -DALLOW_EXPERIMENTAL_API
 LDLIBS += -lpthread
 LDLIBS += -lrte_eal -lrte_mbuf -lrte_mempool -lrte_ring
 LDLIBS += -lrte_ethdev -lrte_net -lrte_kvargs -lrte_kni
index 0f784c6..e3b2d83 100644 (file)
@@ -3,6 +3,5 @@
 
 # this driver can be built if-and-only-if KNI library is buildable
 build = dpdk_conf.has('RTE_LIBRTE_KNI')
-allow_experimental_apis = true
 sources = files('rte_eth_kni.c')
 deps += 'kni'
index 1fd7aa0..3ff74d5 100644 (file)
@@ -18,6 +18,5 @@ SRCS-y := main.c commands.c
 
 CFLAGS += -O3
 CFLAGS += $(WERROR_FLAGS)
-CFLAGS += -DALLOW_EXPERIMENTAL_API
 
 include $(RTE_SDK)/mk/rte.extapp.mk
index 222679b..f4b85e4 100644 (file)
@@ -25,7 +25,6 @@ CFLAGS += -O3 $(shell pkg-config --cflags libdpdk)
 LDFLAGS_SHARED = $(shell pkg-config --libs libdpdk)
 LDFLAGS_STATIC = -Wl,-Bstatic $(shell pkg-config --static --libs libdpdk)
 
-CFLAGS += -DALLOW_EXPERIMENTAL_API
 CFLAGS += -Wno-deprecated-declarations
 
 build/$(APP)-shared: $(SRCS-y) Makefile $(PC_FILE) | build
@@ -58,7 +57,6 @@ $(error This application can only operate in a linux environment, \
 please change the definition of the RTE_TARGET environment variable)
 endif
 
-CFLAGS += -DALLOW_EXPERIMENTAL_API
 CFLAGS += -O3
 CFLAGS += $(WERROR_FLAGS)
 CFLAGS += -Wno-deprecated-declarations
index 1dc341e..f65d689 100644 (file)
@@ -10,7 +10,6 @@ if not is_linux
        build = false
 endif
 deps += ['hash', 'vhost']
-allow_experimental_apis = true
 cflags += '-Wno-deprecated-declarations'
 sources = files(
        'main.c', 'vxlan.c', 'vxlan_setup.c'
index 0ec42d8..824b8f9 100644 (file)
@@ -76,7 +76,7 @@ static int cmp_dev_name(const struct rte_device *dev, const void *_name)
        return strcmp(dev->name, name);
 }
 
-int __rte_experimental
+int
 rte_dev_is_probed(const struct rte_device *dev)
 {
        /* The field driver should be set only when the probe is successful. */
index 1cbac42..8c2744f 100644 (file)
@@ -114,14 +114,14 @@ rte_eal_cpu_init(void)
        return 0;
 }
 
-unsigned int __rte_experimental
+unsigned int
 rte_socket_count(void)
 {
        const struct rte_config *config = rte_eal_get_configuration();
        return config->numa_node_count;
 }
 
-int __rte_experimental
+int
 rte_socket_id_by_idx(unsigned int idx)
 {
        const struct rte_config *config = rte_eal_get_configuration();
index 14f206c..c91aba8 100644 (file)
@@ -164,7 +164,7 @@ static void *rte_thread_init(void *arg)
        return start_routine(routine_arg);
 }
 
-__rte_experimental int
+int
 rte_ctrl_thread_create(pthread_t *thread, const char *name,
                const pthread_attr_t *attr,
                void *(*start_routine)(void *), void *arg)
index 0d5e25b..56dd52a 100644 (file)
@@ -111,9 +111,6 @@ struct rte_device {
 };
 
 /**
- * @warning
- * @b EXPERIMENTAL: this API may change without prior notice
- *
  * Query status of a device.
  *
  * @param dev
@@ -121,7 +118,6 @@ struct rte_device {
  * @return
  *   (int)true if already probed successfully, 0 otherwise.
  */
-__rte_experimental
 int rte_dev_is_probed(const struct rte_device *dev);
 
 /**
index 8334332..f928866 100644 (file)
@@ -174,9 +174,6 @@ int rte_eal_iopl_init(void);
 int rte_eal_init(int argc, char **argv);
 
 /**
- * @warning
- * @b EXPERIMENTAL: this API may change without prior notice
- *
  * Clean up the Environment Abstraction Layer (EAL)
  *
  * This function must be called to release any internal resources that EAL has
@@ -187,7 +184,7 @@ int rte_eal_init(int argc, char **argv);
  * @return 0 Successfully released all internal EAL resources
  * @return -EFAULT There was an error in releasing all resources.
  */
-int __rte_experimental rte_eal_cleanup(void);
+int rte_eal_cleanup(void);
 
 /**
  * Check if a primary process is currently alive
index dea17f5..be757a3 100644 (file)
@@ -149,7 +149,7 @@ unsigned rte_socket_id(void);
  * @return
  *   the number of physical sockets as recognized by EAL
  */
-unsigned int __rte_experimental
+unsigned int
 rte_socket_count(void);
 
 /**
@@ -166,7 +166,7 @@ rte_socket_count(void);
  *   - physical socket id as recognized by EAL
  *   - -1 on error, with errno set to EINVAL
  */
-int __rte_experimental
+int
 rte_socket_id_by_idx(unsigned int idx);
 
 /**
@@ -306,7 +306,7 @@ int rte_thread_setname(pthread_t id, const char *name);
  *   On success, returns 0; on error, it returns a negative value
  *   corresponding to the error number.
  */
-__rte_experimental int
+int
 rte_ctrl_thread_create(pthread_t *thread, const char *name,
                const pthread_attr_t *attr,
                void *(*start_routine)(void *), void *arg);
index f7ae62d..1613996 100644 (file)
@@ -1253,7 +1253,7 @@ mark_freeable(const struct rte_memseg_list *msl, const struct rte_memseg *ms,
        return 0;
 }
 
-int __rte_experimental
+int
 rte_eal_cleanup(void)
 {
        /* if we're in a primary process, we need to mark hugepages as freeable
index 18d0201..2454934 100644 (file)
@@ -271,6 +271,8 @@ DPDK_18.11 {
 DPDK_19.05 {
        global:
 
+       rte_ctrl_thread_create;
+       rte_dev_is_probed;
        rte_devargs_add;
        rte_devargs_dump;
        rte_devargs_insert;
@@ -279,6 +281,9 @@ DPDK_19.05 {
        rte_devargs_parsef;
        rte_devargs_remove;
        rte_devargs_type_count;
+       rte_eal_cleanup;
+       rte_socket_count;
+       rte_socket_id_by_idx;
 
 } DPDK_18.11;
 
@@ -289,7 +294,6 @@ EXPERIMENTAL {
        rte_class_find_by_name;
        rte_class_register;
        rte_class_unregister;
-       rte_ctrl_thread_create;
        rte_delay_us_sleep;
        rte_dev_dma_map;
        rte_dev_dma_unmap;
@@ -300,10 +304,8 @@ EXPERIMENTAL {
        rte_dev_event_monitor_stop;
        rte_dev_hotplug_handle_disable;
        rte_dev_hotplug_handle_enable;
-       rte_dev_is_probed;
        rte_dev_iterator_init;
        rte_dev_iterator_next;
-       rte_eal_cleanup;
        rte_extmem_attach;
        rte_extmem_detach;
        rte_extmem_register;
@@ -376,6 +378,4 @@ EXPERIMENTAL {
        rte_service_lcore_attr_get;
        rte_service_lcore_attr_reset_all;
        rte_service_may_be_active;
-       rte_socket_count;
-       rte_socket_id_by_idx;
 };