From: Ray Kinsella <mdr@ashroe.eu>
To: Gage Eads <gage.eads@intel.com>, dev@dpdk.org
Cc: thomas@monjalon.net, david.marchand@redhat.com,
nhorman@tuxdriver.com, phil.yang@arm.com,
honnappa.nagarahalli@arm.com, olivier.matz@6wind.com
Subject: Re: [dpdk-dev] [PATCH] stack: remove experimental tag from API
Date: Thu, 28 May 2020 06:46:56 +0100 [thread overview]
Message-ID: <542e46eb-9cfc-bdd5-5ed8-97565b2e7113@ashroe.eu> (raw)
In-Reply-To: <20200528010423.5941-1-gage.eads@intel.com>
Hi Gage,
Do you have any idea.
If the change from experimental to stable symbol is likely to break anyone's application?
(are folks actively using the api with shared libraries)
If so, you _may_ consider offering a temporary alias to experimental until the v21 is declared at 20.11.
This is entirely at your discretion, see
https://doc.dpdk.org/guides/contributing/abi_versioning.html (4.3.1.4)
Please see my additional comments on the map file below.
On 28/05/2020 02:04, Gage Eads wrote:
> The stack library was first released in 19.05, and its interfaces have been
> stable since their initial introduction. This commit promotes the full
> interface to stable, starting with the 20.08 ABI.
>
> Signed-off-by: Gage Eads <gage.eads@intel.com>
> ---
> lib/librte_stack/rte_stack.h | 29 -----------------------------
> lib/librte_stack/rte_stack_lf.h | 2 --
> lib/librte_stack/rte_stack_std.h | 3 ---
> lib/librte_stack/rte_stack_version.map | 2 +-
> 4 files changed, 1 insertion(+), 35 deletions(-)
>
> diff --git a/lib/librte_stack/rte_stack.h b/lib/librte_stack/rte_stack.h
> index 27ddb199e..343dd019a 100644
> --- a/lib/librte_stack/rte_stack.h
> +++ b/lib/librte_stack/rte_stack.h
> @@ -4,7 +4,6 @@
>
> /**
> * @file rte_stack.h
> - * @b EXPERIMENTAL: this API may change without prior notice
> *
> * RTE Stack
> *
> @@ -98,9 +97,6 @@ struct rte_stack {
> #include "rte_stack_lf.h"
>
> /**
> - * @warning
> - * @b EXPERIMENTAL: this API may change without prior notice
> - *
> * Push several objects on the stack (MT-safe).
> *
> * @param s
> @@ -112,7 +108,6 @@ struct rte_stack {
> * @return
> * Actual number of objects pushed (either 0 or *n*).
> */
> -__rte_experimental
> static __rte_always_inline unsigned int
> rte_stack_push(struct rte_stack *s, void * const *obj_table, unsigned int n)
> {
> @@ -126,9 +121,6 @@ rte_stack_push(struct rte_stack *s, void * const *obj_table, unsigned int n)
> }
>
> /**
> - * @warning
> - * @b EXPERIMENTAL: this API may change without prior notice
> - *
> * Pop several objects from the stack (MT-safe).
> *
> * @param s
> @@ -140,7 +132,6 @@ rte_stack_push(struct rte_stack *s, void * const *obj_table, unsigned int n)
> * @return
> * Actual number of objects popped (either 0 or *n*).
> */
> -__rte_experimental
> static __rte_always_inline unsigned int
> rte_stack_pop(struct rte_stack *s, void **obj_table, unsigned int n)
> {
> @@ -154,9 +145,6 @@ rte_stack_pop(struct rte_stack *s, void **obj_table, unsigned int n)
> }
>
> /**
> - * @warning
> - * @b EXPERIMENTAL: this API may change without prior notice
> - *
> * Return the number of used entries in a stack.
> *
> * @param s
> @@ -164,7 +152,6 @@ rte_stack_pop(struct rte_stack *s, void **obj_table, unsigned int n)
> * @return
> * The number of used entries in the stack.
> */
> -__rte_experimental
> static __rte_always_inline unsigned int
> rte_stack_count(struct rte_stack *s)
> {
> @@ -177,9 +164,6 @@ rte_stack_count(struct rte_stack *s)
> }
>
> /**
> - * @warning
> - * @b EXPERIMENTAL: this API may change without prior notice
> - *
> * Return the number of free entries in a stack.
> *
> * @param s
> @@ -187,7 +171,6 @@ rte_stack_count(struct rte_stack *s)
> * @return
> * The number of free entries in the stack.
> */
> -__rte_experimental
> static __rte_always_inline unsigned int
> rte_stack_free_count(struct rte_stack *s)
> {
> @@ -197,9 +180,6 @@ rte_stack_free_count(struct rte_stack *s)
> }
>
> /**
> - * @warning
> - * @b EXPERIMENTAL: this API may change without prior notice
> - *
> * Create a new stack named *name* in memory.
> *
> * This function uses ``memzone_reserve()`` to allocate memory for a stack of
> @@ -226,28 +206,20 @@ rte_stack_free_count(struct rte_stack *s)
> * - ENOMEM - insufficient memory to create the stack
> * - ENAMETOOLONG - name size exceeds RTE_STACK_NAMESIZE
> */
> -__rte_experimental
> struct rte_stack *
> rte_stack_create(const char *name, unsigned int count, int socket_id,
> uint32_t flags);
>
> /**
> - * @warning
> - * @b EXPERIMENTAL: this API may change without prior notice
> - *
> * Free all memory used by the stack.
> *
> * @param s
> * Stack to free
> */
> -__rte_experimental
> void
> rte_stack_free(struct rte_stack *s);
>
> /**
> - * @warning
> - * @b EXPERIMENTAL: this API may change without prior notice
> - *
> * Lookup a stack by its name.
> *
> * @param name
> @@ -258,7 +230,6 @@ rte_stack_free(struct rte_stack *s);
> * - ENOENT - Stack with name *name* not found.
> * - EINVAL - *name* pointer is NULL.
> */
> -__rte_experimental
> struct rte_stack *
> rte_stack_lookup(const char *name);
>
> diff --git a/lib/librte_stack/rte_stack_lf.h b/lib/librte_stack/rte_stack_lf.h
> index e67630c27..eb106e64e 100644
> --- a/lib/librte_stack/rte_stack_lf.h
> +++ b/lib/librte_stack/rte_stack_lf.h
> @@ -27,7 +27,6 @@
> * @return
> * Actual number of objects enqueued.
> */
> -__rte_experimental
> static __rte_always_inline unsigned int
> __rte_stack_lf_push(struct rte_stack *s,
> void * const *obj_table,
> @@ -66,7 +65,6 @@ __rte_stack_lf_push(struct rte_stack *s,
> * @return
> * - Actual number of objects popped.
> */
> -__rte_experimental
> static __rte_always_inline unsigned int
> __rte_stack_lf_pop(struct rte_stack *s, void **obj_table, unsigned int n)
> {
> diff --git a/lib/librte_stack/rte_stack_std.h b/lib/librte_stack/rte_stack_std.h
> index 7142cbf8e..ae28add5c 100644
> --- a/lib/librte_stack/rte_stack_std.h
> +++ b/lib/librte_stack/rte_stack_std.h
> @@ -19,7 +19,6 @@
> * @return
> * Actual number of objects pushed (either 0 or *n*).
> */
> -__rte_experimental
> static __rte_always_inline unsigned int
> __rte_stack_std_push(struct rte_stack *s, void * const *obj_table,
> unsigned int n)
> @@ -59,7 +58,6 @@ __rte_stack_std_push(struct rte_stack *s, void * const *obj_table,
> * @return
> * Actual number of objects popped (either 0 or *n*).
> */
> -__rte_experimental
> static __rte_always_inline unsigned int
> __rte_stack_std_pop(struct rte_stack *s, void **obj_table, unsigned int n)
> {
> @@ -94,7 +92,6 @@ __rte_stack_std_pop(struct rte_stack *s, void **obj_table, unsigned int n)
> * @return
> * The number of used entries in the stack.
> */
> -__rte_experimental
> static __rte_always_inline unsigned int
> __rte_stack_std_count(struct rte_stack *s)
> {
> diff --git a/lib/librte_stack/rte_stack_version.map b/lib/librte_stack/rte_stack_version.map
> index 6662679c3..22c703d3b 100644
> --- a/lib/librte_stack/rte_stack_version.map
> +++ b/lib/librte_stack/rte_stack_version.map
> @@ -1,4 +1,4 @@
> -EXPERIMENTAL {
> +DPDK_20.0.3 {
> global:
>
> rte_stack_create;
>
Should be DPDK_21, the next major ABI version is v21.
next prev parent reply other threads:[~2020-05-28 5:47 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-28 1:04 Gage Eads
2020-05-28 5:46 ` Ray Kinsella [this message]
2020-05-28 8:10 ` Thomas Monjalon
2020-05-28 8:22 ` Ray Kinsella
2020-05-28 14:18 ` Eads, Gage
2020-05-28 14:33 ` Bruce Richardson
2020-05-28 15:04 ` [dpdk-dev] [20.11] [PATCH v2] " Gage Eads
2020-05-28 15:29 ` Thomas Monjalon
2020-09-30 18:49 ` David Marchand
2020-09-30 21:39 ` [dpdk-dev] [PATCH] " Gage Eads
2020-10-05 9:07 ` Kinsella, Ray
2020-10-05 9:53 ` Kinsella, Ray
2020-10-05 12:57 ` David Marchand
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=542e46eb-9cfc-bdd5-5ed8-97565b2e7113@ashroe.eu \
--to=mdr@ashroe.eu \
--cc=david.marchand@redhat.com \
--cc=dev@dpdk.org \
--cc=gage.eads@intel.com \
--cc=honnappa.nagarahalli@arm.com \
--cc=nhorman@tuxdriver.com \
--cc=olivier.matz@6wind.com \
--cc=phil.yang@arm.com \
--cc=thomas@monjalon.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).