From: Stephen Hemminger <stephen@networkplumber.org>
To: dev@dpdk.org
Cc: Stephen Hemminger <stephen@networkplumber.org>,
Cristian Dumitrescu <cristian.dumitrescu@intel.com>
Subject: [PATCH 10/20] pipeline: promote SWX IPsec API to stable
Date: Wed, 7 Oct 2026 14:39:40 -0700 [thread overview]
Message-ID: <20261007214115.3092715-11-stephen@networkplumber.org> (raw)
In-Reply-To: <20261007214115.3092715-1-stephen@networkplumber.org>
The rte_swx_ipsec_* symbols have been experimental since 23.03 and have
had no functional change since. Promote them to stable along with the
rest of the SWX pipeline API.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
lib/pipeline/rte_swx_ipsec.c | 14 +++++++-------
lib/pipeline/rte_swx_ipsec.h | 8 --------
2 files changed, 7 insertions(+), 15 deletions(-)
diff --git a/lib/pipeline/rte_swx_ipsec.c b/lib/pipeline/rte_swx_ipsec.c
index 553056fad2..2b2b5e5e5f 100644
--- a/lib/pipeline/rte_swx_ipsec.c
+++ b/lib/pipeline/rte_swx_ipsec.c
@@ -178,7 +178,7 @@ static struct rte_tailq_elem rte_swx_ipsec_tailq = {
EAL_REGISTER_TAILQ(rte_swx_ipsec_tailq)
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ipsec_find, 23.03)
+RTE_EXPORT_SYMBOL(rte_swx_ipsec_find)
struct rte_swx_ipsec *
rte_swx_ipsec_find(const char *name)
{
@@ -263,7 +263,7 @@ ipsec_unregister(struct rte_swx_ipsec *ipsec)
static void
ipsec_session_free(struct rte_swx_ipsec *ipsec, struct rte_ipsec_session *s);
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ipsec_free, 23.03)
+RTE_EXPORT_SYMBOL(rte_swx_ipsec_free)
void
rte_swx_ipsec_free(struct rte_swx_ipsec *ipsec)
{
@@ -294,7 +294,7 @@ rte_swx_ipsec_free(struct rte_swx_ipsec *ipsec)
env_free(ipsec, ipsec->total_size);
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ipsec_create, 23.03)
+RTE_EXPORT_SYMBOL(rte_swx_ipsec_create)
int
rte_swx_ipsec_create(struct rte_swx_ipsec **ipsec_out,
const char *name,
@@ -722,7 +722,7 @@ rte_swx_ipsec_post_crypto(struct rte_swx_ipsec *ipsec)
}
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ipsec_run, 23.03)
+RTE_EXPORT_SYMBOL(rte_swx_ipsec_run)
void
rte_swx_ipsec_run(struct rte_swx_ipsec *ipsec)
{
@@ -1134,7 +1134,7 @@ do { \
} \
} while (0)
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ipsec_sa_read, 23.03)
+RTE_EXPORT_SYMBOL(rte_swx_ipsec_sa_read)
struct rte_swx_ipsec_sa_params *
rte_swx_ipsec_sa_read(struct rte_swx_ipsec *ipsec __rte_unused,
const char *string,
@@ -1768,7 +1768,7 @@ ipsec_session_free(struct rte_swx_ipsec *ipsec,
memset(s, 0, sizeof(*s));
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ipsec_sa_add, 23.03)
+RTE_EXPORT_SYMBOL(rte_swx_ipsec_sa_add)
int
rte_swx_ipsec_sa_add(struct rte_swx_ipsec *ipsec,
struct rte_swx_ipsec_sa_params *sa_params,
@@ -1808,7 +1808,7 @@ rte_swx_ipsec_sa_add(struct rte_swx_ipsec *ipsec,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ipsec_sa_delete, 23.03)
+RTE_EXPORT_SYMBOL(rte_swx_ipsec_sa_delete)
void
rte_swx_ipsec_sa_delete(struct rte_swx_ipsec *ipsec,
uint32_t sa_id)
diff --git a/lib/pipeline/rte_swx_ipsec.h b/lib/pipeline/rte_swx_ipsec.h
index 6cff18084f..cfd6140d02 100644
--- a/lib/pipeline/rte_swx_ipsec.h
+++ b/lib/pipeline/rte_swx_ipsec.h
@@ -46,7 +46,6 @@
#include <stdio.h>
#include <netinet/in.h>
-#include <rte_compat.h>
#include <rte_crypto_sym.h>
#include <rte_ip6.h>
@@ -125,7 +124,6 @@ struct rte_swx_ipsec_input_packet_metadata {
* @return
* Valid IPsec instance handle if found or NULL otherwise.
*/
-__rte_experimental
struct rte_swx_ipsec *
rte_swx_ipsec_find(const char *name);
@@ -147,7 +145,6 @@ rte_swx_ipsec_find(const char *name);
* -ENOMEM: Not enough space/cannot allocate memory;
* -EEXIST: Pipeline with this name already exists.
*/
-__rte_experimental
int
rte_swx_ipsec_create(struct rte_swx_ipsec **ipsec,
const char *name,
@@ -160,7 +157,6 @@ rte_swx_ipsec_create(struct rte_swx_ipsec **ipsec,
* @param[in] ipsec
* IPsec instance handle.
*/
-__rte_experimental
void
rte_swx_ipsec_free(struct rte_swx_ipsec *ipsec);
@@ -174,7 +170,6 @@ rte_swx_ipsec_free(struct rte_swx_ipsec *ipsec);
* @param[in] ipsec
* IPsec instance handle.
*/
-__rte_experimental
void
rte_swx_ipsec_run(struct rte_swx_ipsec *ipsec);
@@ -297,7 +292,6 @@ struct rte_swx_ipsec_sa_params {
* @return
* 0 on success or error code otherwise.
*/
-__rte_experimental
int
rte_swx_ipsec_sa_add(struct rte_swx_ipsec *ipsec,
struct rte_swx_ipsec_sa_params *sa_params,
@@ -314,7 +308,6 @@ rte_swx_ipsec_sa_add(struct rte_swx_ipsec *ipsec,
* @param[in] sa_id
* The SA ID.
*/
-__rte_experimental
void
rte_swx_ipsec_sa_delete(struct rte_swx_ipsec *ipsec,
uint32_t sa_id);
@@ -367,7 +360,6 @@ rte_swx_ipsec_sa_delete(struct rte_swx_ipsec *ipsec,
* @return
* Pointer to valid IPsec SA parameters data structure on success or NULL on error.
*/
-__rte_experimental
struct rte_swx_ipsec_sa_params *
rte_swx_ipsec_sa_read(struct rte_swx_ipsec *ipsec,
const char *string,
--
2.53.0
next prev parent reply other threads:[~2026-10-07 21:42 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-07 21:39 [PATCH 00/20] promote long standing experimental API to stable Stephen Hemminger
2026-10-07 21:39 ` [PATCH 01/20] eal: add missing export for rte_basename Stephen Hemminger
2026-10-08 9:56 ` Bruce Richardson
2026-10-07 21:39 ` [PATCH 02/20] eal: promote rte_basename to stable Stephen Hemminger
2026-10-08 9:56 ` Bruce Richardson
2026-10-07 21:39 ` [PATCH 03/20] eal: promote explicit zero and sensitive free " Stephen Hemminger
2026-10-08 10:01 ` Bruce Richardson
2026-10-07 21:39 ` [PATCH 04/20] eal: promote rte_size_to_str " Stephen Hemminger
2026-10-08 10:01 ` Bruce Richardson
2026-10-07 21:39 ` [PATCH 05/20] eal: promote lcore variables API " Stephen Hemminger
2026-10-08 10:04 ` Bruce Richardson
2026-10-07 21:39 ` [PATCH 06/20] cmdline: promote bool token ops " Stephen Hemminger
2026-10-08 10:05 ` Bruce Richardson
2026-10-07 21:39 ` [PATCH 07/20] ethdev: promote link connector to string " Stephen Hemminger
2026-10-07 21:39 ` [PATCH 08/20] port: promote SWX port API " Stephen Hemminger
2026-10-07 21:39 ` [PATCH 09/20] table: promote SWX table " Stephen Hemminger
2026-10-07 21:39 ` Stephen Hemminger [this message]
2026-10-07 21:39 ` [PATCH 11/20] pipeline: promote SWX pipeline and control " Stephen Hemminger
2026-10-07 21:39 ` [PATCH 12/20] power: promote PM QoS and uncore " Stephen Hemminger
2026-10-07 21:39 ` [PATCH 13/20] ring: promote soring " Stephen Hemminger
2026-10-07 21:39 ` [PATCH 14/20] dispatcher: promote " Stephen Hemminger
2026-10-07 21:39 ` [PATCH 15/20] argparse: " Stephen Hemminger
2026-10-08 10:15 ` Bruce Richardson
2026-10-10 2:45 ` fengchengwen
2026-10-07 21:39 ` [PATCH 16/20] node: " Stephen Hemminger
2026-10-07 21:39 ` [PATCH 17/20] hash: promote RCU reclaim and thash key generation " Stephen Hemminger
2026-10-08 10:16 ` Bruce Richardson
2026-10-07 21:39 ` [PATCH 18/20] cryptodev: promote algorithm helpers " Stephen Hemminger
2026-10-07 21:39 ` [PATCH 19/20] pdcp: promote API " Stephen Hemminger
2026-10-07 21:39 ` [PATCH 20/20] mempool: promote memory range and alignment " Stephen Hemminger
2026-10-08 7:19 ` Morten Brørup
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=20261007214115.3092715-11-stephen@networkplumber.org \
--to=stephen@networkplumber.org \
--cc=cristian.dumitrescu@intel.com \
--cc=dev@dpdk.org \
/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