From patchwork Thu May 28 15:04:42 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Eads, Gage" X-Patchwork-Id: 70686 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 27C4FA0093; Thu, 28 May 2020 17:06:22 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 9E49F1DB6A; Thu, 28 May 2020 17:06:21 +0200 (CEST) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id 955E81C18F for ; Thu, 28 May 2020 17:06:19 +0200 (CEST) IronPort-SDR: xvyBrT6KGpMRqjU2ogLVxBvKUIpnuOMHNm+J/iN5GtCi0pdATdOhlZczeahrMZuP8bculTlluG LsZtbsm0QLiQ== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 May 2020 08:06:18 -0700 IronPort-SDR: PlDO3nOkJ4khTIFFWayQFZf6NLgdo1qQtu00IMeScvQM6/xXQymVu/hP3WFKAS3j59jw50iSVM qev3kvaJpwIg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,445,1583222400"; d="scan'208";a="267244016" Received: from txasoft-yocto.an.intel.com ([10.123.72.192]) by orsmga003.jf.intel.com with ESMTP; 28 May 2020 08:06:17 -0700 From: Gage Eads To: dev@dpdk.org Cc: thomas@monjalon.net, david.marchand@redhat.com, mdr@ashroe.eu, nhorman@tuxdriver.com, phil.yang@arm.com, honnappa.nagarahalli@arm.com Date: Thu, 28 May 2020 10:04:42 -0500 Message-Id: <20200528150442.321-1-gage.eads@intel.com> X-Mailer: git-send-email 2.13.6 In-Reply-To: <20200528010423.5941-1-gage.eads@intel.com> References: <20200528010423.5941-1-gage.eads@intel.com> Subject: [dpdk-dev] [20.11] [PATCH v2] stack: remove experimental tag from API X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 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.11 major version. Signed-off-by: Gage Eads Acked-by: David Marchand --- doc/guides/rel_notes/release_20_11.rst | 3 +++ 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 +- 5 files changed, 4 insertions(+), 35 deletions(-) v2: - Added 20.11 tag, will set patch status to 'Deferred' so it is skipped for the 20.08 development period. - Added release notes announcement. release_20_11.rst doesn't exist yet, so I made the change to release_20_08.rst then edited the filename directly in the patch. This will not apply cleanly. - Changed rte_stack_version.map version to DPDK_21. diff --git a/doc/guides/rel_notes/release_20_11.rst b/doc/guides/rel_notes/release_20_11.rst index 39064afbe..4eaf4f17d 100644 --- a/doc/guides/rel_notes/release_20_11.rst +++ b/doc/guides/rel_notes/release_20_11.rst @@ -101,6 +101,9 @@ ABI Changes Also, make sure to start the actual text at the margin. ========================================================= +* stack: the experimental tag has been dropped from the stack library, and its + interfaces are considered stable as of DPDK 20.11. + * No ABI change that would break compatibility with 19.11. 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..8c4ca0245 100644 --- a/lib/librte_stack/rte_stack_version.map +++ b/lib/librte_stack/rte_stack_version.map @@ -1,4 +1,4 @@ -EXPERIMENTAL { +DPDK_21 { global: rte_stack_create;