On 03/07/2020 11:26, Feifei Wang wrote:
> Remove the experimental tag for rte_ring_reset API that have been around
> for 4 releases.
> 
> Signed-off-by: Feifei Wang <feifei.wa...@arm.com>
> Reviewed-by: Honnappa Nagarahalli <honnappa.nagaraha...@arm.com>
> Reviewed-by: Ruifeng Wang <ruifeng.w...@arm.com>
> ---
>  lib/librte_ring/rte_ring.h           | 3 ---
>  lib/librte_ring/rte_ring_version.map | 4 +---
>  2 files changed, 1 insertion(+), 6 deletions(-)
> 
> diff --git a/lib/librte_ring/rte_ring.h b/lib/librte_ring/rte_ring.h
> index f67141482..7181c33b4 100644
> --- a/lib/librte_ring/rte_ring.h
> +++ b/lib/librte_ring/rte_ring.h
> @@ -663,15 +663,12 @@ rte_ring_dequeue(struct rte_ring *r, void **obj_p)
>   *
>   * This function flush all the elements in a ring
>   *
> - * @b EXPERIMENTAL: this API may change without prior notice
> - *
>   * @warning
>   * Make sure the ring is not in use while calling this function.
>   *
>   * @param r
>   *   A pointer to the ring structure.
>   */
> -__rte_experimental
>  void
>  rte_ring_reset(struct rte_ring *r);
>  
> diff --git a/lib/librte_ring/rte_ring_version.map 
> b/lib/librte_ring/rte_ring_version.map
> index e88c143cf..aec6f3820 100644
> --- a/lib/librte_ring/rte_ring_version.map
> +++ b/lib/librte_ring/rte_ring_version.map
> @@ -8,6 +8,7 @@ DPDK_20.0 {
>       rte_ring_init;
>       rte_ring_list_dump;
>       rte_ring_lookup;
> +     rte_ring_reset;
>  
>       local: *;
>  };
> @@ -15,9 +16,6 @@ DPDK_20.0 {
>  EXPERIMENTAL {
>       global:
>  
> -     # added in 19.08
> -     rte_ring_reset;
> -
>       # added in 20.02
>       rte_ring_create_elem;
>       rte_ring_get_memsize_elem;

So strictly speaking, rte_ring_reset is part of the DPDK_21 ABI, not the v20.0 
ABI.

The way to solve is to add it the DPDK_21 ABI in the map file.
And then use the VERSION_SYMBOL_EXPERIMENTAL to alias to experimental if 
necessary. 

https://doc.dpdk.org/guides/contributing/abi_versioning.html#versioning-macros

Reply via email to