From: Stephen Hemminger <stephen@networkplumber.org>
To: dev@dpdk.org
Cc: Stephen Hemminger <stephen@networkplumber.org>,
Cristian Dumitrescu <cristian.dumitrescu@intel.com>
Subject: [PATCH 11/20] pipeline: promote SWX pipeline and control API to stable
Date: Wed, 7 Oct 2026 14:39:41 -0700 [thread overview]
Message-ID: <20261007214115.3092715-12-stephen@networkplumber.org> (raw)
In-Reply-To: <20261007214115.3092715-1-stephen@networkplumber.org>
The rte_swx_pipeline_* symbols date from 20.11, with later additions for
the register and meter arrays (21.05), selector (21.08), learner (21.11),
hash function registration (22.07), pipeline lookup and code generation
(22.11) and RSS (23.03). The rte_swx_ctl_* control plane symbols span the
same range of releases.
The API has been in use unchanged for several releases and is the only
pipeline API remaining now that the legacy rte_pipeline_* API has been
removed, so promote it to stable.
The pipeline and control parts are promoted together because they cannot
be separated: rte_swx_ctl.h declares symbols defined in both
rte_swx_ctl.c and rte_swx_pipeline.c, so dropping __rte_experimental from
that header requires updating the exports in both files at once.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
doc/guides/rel_notes/release_26_11.rst | 5 +
lib/pipeline/rte_swx_ctl.c | 34 +++---
lib/pipeline/rte_swx_ctl.h | 61 -----------
lib/pipeline/rte_swx_pipeline.c | 146 ++++++++++++-------------
lib/pipeline/rte_swx_pipeline.h | 32 ------
5 files changed, 95 insertions(+), 183 deletions(-)
diff --git a/doc/guides/rel_notes/release_26_11.rst b/doc/guides/rel_notes/release_26_11.rst
index ac8ce1d9a5..fad1a53e04 100644
--- a/doc/guides/rel_notes/release_26_11.rst
+++ b/doc/guides/rel_notes/release_26_11.rst
@@ -343,6 +343,11 @@ API Changes
``rte_event_port_profile_links_get`` and
``rte_event_port_profile_unlink``
+* pipeline: Promoted the SWX API from experimental to stable:
+ the ``rte_swx_pipeline_*``, ``rte_swx_ctl_*`` and ``rte_swx_ipsec_*``
+ functions in pipeline, the ``rte_swx_table_*`` symbols in table and
+ the ``rte_swx_port_*`` symbols in port.
+
* reorder: Promoted the following API from experimental to stable:
``rte_reorder_seqn``, ``rte_reorder_drain_up_to_seqn``,
``rte_reorder_min_seqn_set`` and ``rte_reorder_memory_footprint_get``.
diff --git a/lib/pipeline/rte_swx_ctl.c b/lib/pipeline/rte_swx_ctl.c
index d24764cbbe..eaa8b7bb28 100644
--- a/lib/pipeline/rte_swx_ctl.c
+++ b/lib/pipeline/rte_swx_ctl.c
@@ -1170,7 +1170,7 @@ static struct rte_tailq_elem rte_swx_ctl_pipeline_tailq = {
EAL_REGISTER_TAILQ(rte_swx_ctl_pipeline_tailq)
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_find, 22.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_find)
struct rte_swx_ctl_pipeline *
rte_swx_ctl_pipeline_find(const char *name)
{
@@ -1250,7 +1250,7 @@ ctl_unregister(struct rte_swx_ctl_pipeline *ctl)
rte_mcfg_tailq_write_unlock();
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_free, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_free)
void
rte_swx_ctl_pipeline_free(struct rte_swx_ctl_pipeline *ctl)
{
@@ -1273,7 +1273,7 @@ rte_swx_ctl_pipeline_free(struct rte_swx_ctl_pipeline *ctl)
free(ctl);
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_create, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_create)
struct rte_swx_ctl_pipeline *
rte_swx_ctl_pipeline_create(struct rte_swx_pipeline *p)
{
@@ -1552,7 +1552,7 @@ rte_swx_ctl_pipeline_create(struct rte_swx_pipeline *p)
return NULL;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_table_entry_add, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_table_entry_add)
int
rte_swx_ctl_pipeline_table_entry_add(struct rte_swx_ctl_pipeline *ctl,
const char *table_name,
@@ -1667,7 +1667,7 @@ rte_swx_ctl_pipeline_table_entry_add(struct rte_swx_ctl_pipeline *ctl,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_table_entry_delete, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_table_entry_delete)
int
rte_swx_ctl_pipeline_table_entry_delete(struct rte_swx_ctl_pipeline *ctl,
const char *table_name,
@@ -1758,7 +1758,7 @@ rte_swx_ctl_pipeline_table_entry_delete(struct rte_swx_ctl_pipeline *ctl,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_table_default_entry_add, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_table_default_entry_add)
int
rte_swx_ctl_pipeline_table_default_entry_add(struct rte_swx_ctl_pipeline *ctl,
const char *table_name,
@@ -2096,7 +2096,7 @@ table_abort(struct rte_swx_ctl_pipeline *ctl, uint32_t table_id)
table_pending_default_free(table);
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_selector_group_add, 21.08)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_selector_group_add)
int
rte_swx_ctl_pipeline_selector_group_add(struct rte_swx_ctl_pipeline *ctl,
const char *selector_name,
@@ -2124,7 +2124,7 @@ rte_swx_ctl_pipeline_selector_group_add(struct rte_swx_ctl_pipeline *ctl,
return -ENOSPC;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_selector_group_delete, 21.08)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_selector_group_delete)
int
rte_swx_ctl_pipeline_selector_group_delete(struct rte_swx_ctl_pipeline *ctl,
const char *selector_name,
@@ -2176,7 +2176,7 @@ rte_swx_ctl_pipeline_selector_group_delete(struct rte_swx_ctl_pipeline *ctl,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_selector_group_member_add, 21.08)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_selector_group_member_add)
int
rte_swx_ctl_pipeline_selector_group_member_add(struct rte_swx_ctl_pipeline *ctl,
const char *selector_name,
@@ -2236,7 +2236,7 @@ rte_swx_ctl_pipeline_selector_group_member_add(struct rte_swx_ctl_pipeline *ctl,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_selector_group_member_delete, 21.08)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_selector_group_member_delete)
int
rte_swx_ctl_pipeline_selector_group_member_delete(struct rte_swx_ctl_pipeline *ctl,
const char *selector_name,
@@ -2490,7 +2490,7 @@ learner_default_entry_duplicate(struct rte_swx_ctl_pipeline *ctl,
return NULL;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_learner_default_entry_add, 21.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_learner_default_entry_add)
int
rte_swx_ctl_pipeline_learner_default_entry_add(struct rte_swx_ctl_pipeline *ctl,
const char *learner_name,
@@ -2564,7 +2564,7 @@ learner_abort(struct rte_swx_ctl_pipeline *ctl, uint32_t learner_id)
learner_pending_default_free(l);
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_commit, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_commit)
int
rte_swx_ctl_pipeline_commit(struct rte_swx_ctl_pipeline *ctl, int abort_on_fail)
{
@@ -2651,7 +2651,7 @@ rte_swx_ctl_pipeline_commit(struct rte_swx_ctl_pipeline *ctl, int abort_on_fail)
return status;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_abort, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_abort)
void
rte_swx_ctl_pipeline_abort(struct rte_swx_ctl_pipeline *ctl)
{
@@ -2986,7 +2986,7 @@ token_is_comment(const char *token)
#define RTE_SWX_CTL_ENTRY_TOKENS_MAX 256
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_table_entry_read, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_table_entry_read)
struct rte_swx_table_entry *
rte_swx_ctl_pipeline_table_entry_read(struct rte_swx_ctl_pipeline *ctl,
const char *table_name,
@@ -3186,7 +3186,7 @@ rte_swx_ctl_pipeline_table_entry_read(struct rte_swx_ctl_pipeline *ctl,
return NULL;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_learner_default_entry_read, 21.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_learner_default_entry_read)
struct rte_swx_table_entry *
rte_swx_ctl_pipeline_learner_default_entry_read(struct rte_swx_ctl_pipeline *ctl,
const char *learner_name,
@@ -3339,7 +3339,7 @@ table_entry_printf(FILE *f,
fprintf(f, "\n");
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_table_fprintf, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_table_fprintf)
int
rte_swx_ctl_pipeline_table_fprintf(FILE *f,
struct rte_swx_ctl_pipeline *ctl,
@@ -3390,7 +3390,7 @@ rte_swx_ctl_pipeline_table_fprintf(FILE *f,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_selector_fprintf, 21.08)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_selector_fprintf)
int
rte_swx_ctl_pipeline_selector_fprintf(FILE *f,
struct rte_swx_ctl_pipeline *ctl,
diff --git a/lib/pipeline/rte_swx_ctl.h b/lib/pipeline/rte_swx_ctl.h
index c4e63753f5..ee85eea852 100644
--- a/lib/pipeline/rte_swx_ctl.h
+++ b/lib/pipeline/rte_swx_ctl.h
@@ -12,7 +12,6 @@
#include <stdint.h>
#include <stdio.h>
-#include <rte_compat.h>
#include <rte_meter.h>
#include "rte_swx_port.h"
@@ -83,7 +82,6 @@ struct rte_swx_ctl_pipeline_info {
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_info_get(struct rte_swx_pipeline *p,
struct rte_swx_ctl_pipeline_info *pipeline);
@@ -99,7 +97,6 @@ rte_swx_ctl_pipeline_info_get(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_numa_node_get(struct rte_swx_pipeline *p,
int *numa_node);
@@ -121,7 +118,6 @@ rte_swx_ctl_pipeline_numa_node_get(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_port_in_stats_read(struct rte_swx_pipeline *p,
uint32_t port_id,
@@ -140,7 +136,6 @@ rte_swx_ctl_pipeline_port_in_stats_read(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_port_out_stats_read(struct rte_swx_pipeline *p,
uint32_t port_id,
@@ -172,7 +167,6 @@ struct rte_swx_ctl_action_info {
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_action_info_get(struct rte_swx_pipeline *p,
uint32_t action_id,
@@ -208,7 +202,6 @@ struct rte_swx_ctl_action_arg_info {
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_action_arg_info_get(struct rte_swx_pipeline *p,
uint32_t action_id,
@@ -259,7 +252,6 @@ struct rte_swx_ctl_table_info {
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_table_info_get(struct rte_swx_pipeline *p,
uint32_t table_id,
@@ -303,7 +295,6 @@ struct rte_swx_ctl_table_match_field_info {
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_table_match_field_info_get(struct rte_swx_pipeline *p,
uint32_t table_id,
@@ -340,7 +331,6 @@ struct rte_swx_ctl_table_action_info {
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_table_action_info_get(struct rte_swx_pipeline *p,
uint32_t table_id,
@@ -366,7 +356,6 @@ rte_swx_ctl_table_action_info_get(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_table_ops_get(struct rte_swx_pipeline *p,
uint32_t table_id,
@@ -405,7 +394,6 @@ struct rte_swx_table_stats {
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_table_stats_read(struct rte_swx_pipeline *p,
const char *table_name,
@@ -443,7 +431,6 @@ struct rte_swx_ctl_selector_info {
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_selector_info_get(struct rte_swx_pipeline *p,
uint32_t selector_id,
@@ -462,7 +449,6 @@ rte_swx_ctl_selector_info_get(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_selector_group_id_field_info_get(struct rte_swx_pipeline *p,
uint32_t selector_id,
@@ -483,7 +469,6 @@ rte_swx_ctl_selector_group_id_field_info_get(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_selector_field_info_get(struct rte_swx_pipeline *p,
uint32_t selector_id,
@@ -503,7 +488,6 @@ rte_swx_ctl_selector_field_info_get(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_selector_member_id_field_info_get(struct rte_swx_pipeline *p,
uint32_t selector_id,
@@ -528,7 +512,6 @@ struct rte_swx_pipeline_selector_stats {
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_selector_stats_read(struct rte_swx_pipeline *p,
const char *selector_name,
@@ -575,7 +558,6 @@ struct rte_swx_ctl_learner_info {
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_learner_info_get(struct rte_swx_pipeline *p,
uint32_t learner_id,
@@ -596,7 +578,6 @@ rte_swx_ctl_learner_info_get(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_learner_match_field_info_get(struct rte_swx_pipeline *p,
uint32_t learner_id,
@@ -620,7 +601,6 @@ rte_swx_ctl_learner_match_field_info_get(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_learner_action_info_get(struct rte_swx_pipeline *p,
uint32_t learner_id,
@@ -642,7 +622,6 @@ rte_swx_ctl_learner_action_info_get(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_learner_timeout_get(struct rte_swx_pipeline *p,
uint32_t learner_id,
@@ -664,7 +643,6 @@ rte_swx_ctl_pipeline_learner_timeout_get(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_learner_timeout_set(struct rte_swx_pipeline *p,
uint32_t learner_id,
@@ -714,7 +692,6 @@ struct rte_swx_learner_stats {
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_learner_stats_read(struct rte_swx_pipeline *p,
const char *learner_name,
@@ -750,7 +727,6 @@ struct rte_swx_pipeline_mirroring_session_params {
* -EINVAL: Invalid argument;
* -EEXIST: Pipeline was already built successfully.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_mirroring_session_set(struct rte_swx_pipeline *p,
uint32_t session_id,
@@ -790,7 +766,6 @@ struct rte_swx_table_state {
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_pipeline_table_state_get(struct rte_swx_pipeline *p,
struct rte_swx_table_state **table_state);
@@ -809,7 +784,6 @@ rte_swx_pipeline_table_state_get(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_pipeline_table_state_set(struct rte_swx_pipeline *p,
struct rte_swx_table_state *table_state);
@@ -829,7 +803,6 @@ struct rte_swx_ctl_pipeline;
* @return
* Valid pipeline control handle if found or NULL otherwise.
*/
-__rte_experimental
struct rte_swx_ctl_pipeline *
rte_swx_ctl_pipeline_find(const char *name);
@@ -841,7 +814,6 @@ rte_swx_ctl_pipeline_find(const char *name);
* @return
* Pipeline control handle, on success, or NULL, on error.
*/
-__rte_experimental
struct rte_swx_ctl_pipeline *
rte_swx_ctl_pipeline_create(struct rte_swx_pipeline *p);
@@ -861,7 +833,6 @@ rte_swx_ctl_pipeline_create(struct rte_swx_pipeline *p);
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_table_entry_add(struct rte_swx_ctl_pipeline *ctl,
const char *table_name,
@@ -883,7 +854,6 @@ rte_swx_ctl_pipeline_table_entry_add(struct rte_swx_ctl_pipeline *ctl,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_table_default_entry_add(struct rte_swx_ctl_pipeline *ctl,
const char *table_name,
@@ -906,7 +876,6 @@ rte_swx_ctl_pipeline_table_default_entry_add(struct rte_swx_ctl_pipeline *ctl,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_table_entry_delete(struct rte_swx_ctl_pipeline *ctl,
const char *table_name,
@@ -931,7 +900,6 @@ rte_swx_ctl_pipeline_table_entry_delete(struct rte_swx_ctl_pipeline *ctl,
* -EINVAL: Invalid argument;
* -ENOSPC: All groups are currently in use, no group available.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_selector_group_add(struct rte_swx_ctl_pipeline *ctl,
const char *selector_name,
@@ -954,7 +922,6 @@ rte_swx_ctl_pipeline_selector_group_add(struct rte_swx_ctl_pipeline *ctl,
* -EINVAL: Invalid argument;
* -ENOMEM: Not enough memory.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_selector_group_delete(struct rte_swx_ctl_pipeline *ctl,
const char *selector_name,
@@ -984,7 +951,6 @@ rte_swx_ctl_pipeline_selector_group_delete(struct rte_swx_ctl_pipeline *ctl,
* -ENOMEM: Not enough memory;
* -ENOSPC: The group is full.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_selector_group_member_add(struct rte_swx_ctl_pipeline *ctl,
const char *selector_name,
@@ -1010,7 +976,6 @@ rte_swx_ctl_pipeline_selector_group_member_add(struct rte_swx_ctl_pipeline *ctl,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_selector_group_member_delete(struct rte_swx_ctl_pipeline *ctl,
const char *selector_name,
@@ -1032,7 +997,6 @@ rte_swx_ctl_pipeline_selector_group_member_delete(struct rte_swx_ctl_pipeline *c
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_learner_default_entry_add(struct rte_swx_ctl_pipeline *ctl,
const char *learner_name,
@@ -1053,7 +1017,6 @@ rte_swx_ctl_pipeline_learner_default_entry_add(struct rte_swx_ctl_pipeline *ctl,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_commit(struct rte_swx_ctl_pipeline *ctl,
int abort_on_fail);
@@ -1066,7 +1029,6 @@ rte_swx_ctl_pipeline_commit(struct rte_swx_ctl_pipeline *ctl,
* @param[in] ctl
* Pipeline control handle.
*/
-__rte_experimental
void
rte_swx_ctl_pipeline_abort(struct rte_swx_ctl_pipeline *ctl);
@@ -1089,7 +1051,6 @@ rte_swx_ctl_pipeline_abort(struct rte_swx_ctl_pipeline *ctl);
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
struct rte_swx_table_entry *
rte_swx_ctl_pipeline_table_entry_read(struct rte_swx_ctl_pipeline *ctl,
const char *table_name,
@@ -1115,7 +1076,6 @@ rte_swx_ctl_pipeline_table_entry_read(struct rte_swx_ctl_pipeline *ctl,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
struct rte_swx_table_entry *
rte_swx_ctl_pipeline_learner_default_entry_read(struct rte_swx_ctl_pipeline *ctl,
const char *learner_name,
@@ -1137,7 +1097,6 @@ rte_swx_ctl_pipeline_learner_default_entry_read(struct rte_swx_ctl_pipeline *ctl
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_table_fprintf(FILE *f,
struct rte_swx_ctl_pipeline *ctl,
@@ -1158,7 +1117,6 @@ rte_swx_ctl_pipeline_table_fprintf(FILE *f,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_selector_fprintf(FILE *f,
struct rte_swx_ctl_pipeline *ctl,
@@ -1190,7 +1148,6 @@ struct rte_swx_ctl_regarray_info {
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_regarray_info_get(struct rte_swx_pipeline *p,
uint32_t regarray_id,
@@ -1211,7 +1168,6 @@ rte_swx_ctl_regarray_info_get(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_regarray_read(struct rte_swx_pipeline *p,
const char *regarray_name,
@@ -1233,7 +1189,6 @@ rte_swx_ctl_pipeline_regarray_read(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_regarray_write(struct rte_swx_pipeline *p,
const char *regarray_name,
@@ -1258,7 +1213,6 @@ rte_swx_ctl_pipeline_regarray_write(struct rte_swx_pipeline *p,
* -EINVAL: Invalid argument;
* -ENOMEM: Not enough memory.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_regarray_read_with_key(struct rte_swx_pipeline *p,
const char *regarray_name,
@@ -1284,7 +1238,6 @@ rte_swx_ctl_pipeline_regarray_read_with_key(struct rte_swx_pipeline *p,
* -EINVAL: Invalid argument;
* -ENOMEM: Not enough memory.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_regarray_write_with_key(struct rte_swx_pipeline *p,
const char *regarray_name,
@@ -1318,7 +1271,6 @@ struct rte_swx_ctl_metarray_info {
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_metarray_info_get(struct rte_swx_pipeline *p,
uint32_t metarray_id,
@@ -1339,7 +1291,6 @@ rte_swx_ctl_metarray_info_get(struct rte_swx_pipeline *p,
* -ENOMEM: Not enough space/cannot allocate memory;
* -EEXIST: Meter profile with this name already exists.
*/
-__rte_experimental
int
rte_swx_ctl_meter_profile_add(struct rte_swx_pipeline *p,
const char *name,
@@ -1357,7 +1308,6 @@ rte_swx_ctl_meter_profile_add(struct rte_swx_pipeline *p,
* -EINVAL: Invalid argument;
* -EBUSY: Meter profile is currently in use.
*/
-__rte_experimental
int
rte_swx_ctl_meter_profile_delete(struct rte_swx_pipeline *p,
const char *name);
@@ -1380,7 +1330,6 @@ rte_swx_ctl_meter_profile_delete(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_meter_reset(struct rte_swx_pipeline *p,
const char *metarray_name,
@@ -1405,7 +1354,6 @@ rte_swx_ctl_meter_reset(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_meter_set(struct rte_swx_pipeline *p,
const char *metarray_name,
@@ -1436,7 +1384,6 @@ struct rte_swx_ctl_meter_stats {
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_meter_stats_read(struct rte_swx_pipeline *p,
const char *metarray_name,
@@ -1463,7 +1410,6 @@ rte_swx_ctl_meter_stats_read(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_meter_reset_with_key(struct rte_swx_pipeline *p,
const char *metarray_name,
@@ -1491,7 +1437,6 @@ rte_swx_ctl_meter_reset_with_key(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_meter_set_with_key(struct rte_swx_pipeline *p,
const char *metarray_name,
@@ -1516,7 +1461,6 @@ rte_swx_ctl_meter_set_with_key(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_meter_stats_read_with_key(struct rte_swx_pipeline *p,
const char *metarray_name,
@@ -1547,7 +1491,6 @@ struct rte_swx_ctl_rss_info {
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_rss_info_get(struct rte_swx_pipeline *p,
uint32_t rss_obj_id,
@@ -1566,7 +1509,6 @@ rte_swx_ctl_rss_info_get(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_rss_key_size_read(struct rte_swx_pipeline *p,
const char *rss_obj_name,
@@ -1585,7 +1527,6 @@ rte_swx_ctl_pipeline_rss_key_size_read(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_rss_key_read(struct rte_swx_pipeline *p,
const char *rss_obj_name,
@@ -1606,7 +1547,6 @@ rte_swx_ctl_pipeline_rss_key_read(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_ctl_pipeline_rss_key_write(struct rte_swx_pipeline *p,
const char *rss_obj_name,
@@ -1620,7 +1560,6 @@ rte_swx_ctl_pipeline_rss_key_write(struct rte_swx_pipeline *p,
* Pipeline control handle.
* If ctl is NULL, no operation is performed.
*/
-__rte_experimental
void
rte_swx_ctl_pipeline_free(struct rte_swx_ctl_pipeline *ctl);
diff --git a/lib/pipeline/rte_swx_pipeline.c b/lib/pipeline/rte_swx_pipeline.c
index 8ceb1fe88d..5263fa642e 100644
--- a/lib/pipeline/rte_swx_pipeline.c
+++ b/lib/pipeline/rte_swx_pipeline.c
@@ -122,7 +122,7 @@ struct_type_field_find(struct struct_type *st, const char *name)
return NULL;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_struct_type_register, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_struct_type_register)
int
rte_swx_pipeline_struct_type_register(struct rte_swx_pipeline *p,
const char *name,
@@ -254,7 +254,7 @@ port_in_type_find(struct rte_swx_pipeline *p, const char *name)
return NULL;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_port_in_type_register, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_port_in_type_register)
int
rte_swx_pipeline_port_in_type_register(struct rte_swx_pipeline *p,
const char *name,
@@ -298,7 +298,7 @@ port_in_find(struct rte_swx_pipeline *p, uint32_t port_id)
return NULL;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_port_in_config, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_port_in_config)
int
rte_swx_pipeline_port_in_config(struct rte_swx_pipeline *p,
uint32_t port_id,
@@ -417,7 +417,7 @@ port_out_type_find(struct rte_swx_pipeline *p, const char *name)
return NULL;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_port_out_type_register, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_port_out_type_register)
int
rte_swx_pipeline_port_out_type_register(struct rte_swx_pipeline *p,
const char *name,
@@ -463,7 +463,7 @@ port_out_find(struct rte_swx_pipeline *p, uint32_t port_id)
return NULL;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_port_out_config, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_port_out_config)
int
rte_swx_pipeline_port_out_config(struct rte_swx_pipeline *p,
uint32_t port_id,
@@ -570,7 +570,7 @@ port_out_free(struct rte_swx_pipeline *p)
/*
* Packet mirroring.
*/
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_mirroring_config, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_mirroring_config)
int
rte_swx_pipeline_mirroring_config(struct rte_swx_pipeline *p,
struct rte_swx_pipeline_mirroring_params *params)
@@ -767,7 +767,7 @@ extern_obj_mailbox_field_parse(struct rte_swx_pipeline *p,
return f;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_extern_type_register, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_extern_type_register)
int
rte_swx_pipeline_extern_type_register(struct rte_swx_pipeline *p,
const char *name,
@@ -808,7 +808,7 @@ rte_swx_pipeline_extern_type_register(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_extern_type_member_func_register, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_extern_type_member_func_register)
int
rte_swx_pipeline_extern_type_member_func_register(struct rte_swx_pipeline *p,
const char *extern_type_name,
@@ -846,7 +846,7 @@ rte_swx_pipeline_extern_type_member_func_register(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_extern_object_config, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_extern_object_config)
int
rte_swx_pipeline_extern_object_config(struct rte_swx_pipeline *p,
const char *extern_type_name,
@@ -1063,7 +1063,7 @@ extern_func_mailbox_field_parse(struct rte_swx_pipeline *p,
return f;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_extern_func_register, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_extern_func_register)
int
rte_swx_pipeline_extern_func_register(struct rte_swx_pipeline *p,
const char *name,
@@ -1192,7 +1192,7 @@ hash_func_find(struct rte_swx_pipeline *p, const char *name)
return NULL;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_hash_func_register, 22.07)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_hash_func_register)
int
rte_swx_pipeline_hash_func_register(struct rte_swx_pipeline *p,
const char *name,
@@ -1293,7 +1293,7 @@ rss_find_by_id(struct rte_swx_pipeline *p, uint32_t rss_obj_id)
return NULL;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_rss_config, 23.03)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_rss_config)
int
rte_swx_pipeline_rss_config(struct rte_swx_pipeline *p, const char *name)
{
@@ -1471,7 +1471,7 @@ header_field_parse(struct rte_swx_pipeline *p,
return f;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_packet_header_register, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_packet_header_register)
int
rte_swx_pipeline_packet_header_register(struct rte_swx_pipeline *p,
const char *name,
@@ -1610,7 +1610,7 @@ metadata_field_parse(struct rte_swx_pipeline *p, const char *name)
return struct_type_field_find(p->metadata_st, &name[2]);
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_packet_metadata_register, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_packet_metadata_register)
int
rte_swx_pipeline_packet_metadata_register(struct rte_swx_pipeline *p,
const char *struct_type_name)
@@ -7870,7 +7870,7 @@ action_does_learning(struct action *a)
return 0; /* FALSE */
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_action_config, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_action_config)
int
rte_swx_pipeline_action_config(struct rte_swx_pipeline *p,
const char *name,
@@ -8235,7 +8235,7 @@ table_find_by_id(struct rte_swx_pipeline *p, uint32_t id)
return NULL;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_table_type_register, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_table_type_register)
int
rte_swx_pipeline_table_type_register(struct rte_swx_pipeline *p,
const char *name,
@@ -8405,7 +8405,7 @@ table_match_fields_check(struct rte_swx_pipeline *p,
return status;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_table_config, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_table_config)
int
rte_swx_pipeline_table_config(struct rte_swx_pipeline *p,
const char *name,
@@ -8909,7 +8909,7 @@ selector_fields_check(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_selector_config, 21.08)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_selector_config)
int
rte_swx_pipeline_selector_config(struct rte_swx_pipeline *p,
const char *name,
@@ -9382,7 +9382,7 @@ learner_action_learning_check(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_learner_config, 21.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_learner_config)
int
rte_swx_pipeline_learner_config(struct rte_swx_pipeline *p,
const char *name,
@@ -9956,7 +9956,7 @@ regarray_find_by_id(struct rte_swx_pipeline *p, uint32_t id)
return NULL;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_regarray_config, 21.05)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_regarray_config)
int
rte_swx_pipeline_regarray_config(struct rte_swx_pipeline *p,
const char *name,
@@ -10095,7 +10095,7 @@ metarray_find_by_id(struct rte_swx_pipeline *p, uint32_t id)
return NULL;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_metarray_config, 21.05)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_metarray_config)
int
rte_swx_pipeline_metarray_config(struct rte_swx_pipeline *p,
const char *name,
@@ -10246,7 +10246,7 @@ static struct rte_tailq_elem rte_swx_pipeline_tailq = {
EAL_REGISTER_TAILQ(rte_swx_pipeline_tailq)
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_find, 22.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_find)
struct rte_swx_pipeline *
rte_swx_pipeline_find(const char *name)
{
@@ -10326,7 +10326,7 @@ pipeline_unregister(struct rte_swx_pipeline *p)
rte_mcfg_tailq_write_unlock();
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_free, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_free)
void
rte_swx_pipeline_free(struct rte_swx_pipeline *p)
{
@@ -10472,7 +10472,7 @@ hash_funcs_register(struct rte_swx_pipeline *p)
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_config, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_config)
int
rte_swx_pipeline_config(struct rte_swx_pipeline **p, const char *name, int numa_node)
{
@@ -10549,7 +10549,7 @@ rte_swx_pipeline_config(struct rte_swx_pipeline **p, const char *name, int numa_
return status;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_instructions_config, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_instructions_config)
int
rte_swx_pipeline_instructions_config(struct rte_swx_pipeline *p,
const char **instructions,
@@ -10572,7 +10572,7 @@ rte_swx_pipeline_instructions_config(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_build, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_build)
int
rte_swx_pipeline_build(struct rte_swx_pipeline *p)
{
@@ -10691,7 +10691,7 @@ rte_swx_pipeline_build(struct rte_swx_pipeline *p)
return status;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_run, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_run)
void
rte_swx_pipeline_run(struct rte_swx_pipeline *p, uint32_t n_instructions)
{
@@ -10701,7 +10701,7 @@ rte_swx_pipeline_run(struct rte_swx_pipeline *p, uint32_t n_instructions)
instr_exec(p);
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_flush, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_flush)
void
rte_swx_pipeline_flush(struct rte_swx_pipeline *p)
{
@@ -10718,7 +10718,7 @@ rte_swx_pipeline_flush(struct rte_swx_pipeline *p)
/*
* Control.
*/
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_info_get, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_info_get)
int
rte_swx_ctl_pipeline_info_get(struct rte_swx_pipeline *p,
struct rte_swx_ctl_pipeline_info *pipeline)
@@ -10752,7 +10752,7 @@ rte_swx_ctl_pipeline_info_get(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_numa_node_get, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_numa_node_get)
int
rte_swx_ctl_pipeline_numa_node_get(struct rte_swx_pipeline *p, int *numa_node)
{
@@ -10763,7 +10763,7 @@ rte_swx_ctl_pipeline_numa_node_get(struct rte_swx_pipeline *p, int *numa_node)
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_action_info_get, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_action_info_get)
int
rte_swx_ctl_action_info_get(struct rte_swx_pipeline *p,
uint32_t action_id,
@@ -10783,7 +10783,7 @@ rte_swx_ctl_action_info_get(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_action_arg_info_get, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_action_arg_info_get)
int
rte_swx_ctl_action_arg_info_get(struct rte_swx_pipeline *p,
uint32_t action_id,
@@ -10808,7 +10808,7 @@ rte_swx_ctl_action_arg_info_get(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_table_info_get, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_table_info_get)
int
rte_swx_ctl_table_info_get(struct rte_swx_pipeline *p,
uint32_t table_id,
@@ -10833,7 +10833,7 @@ rte_swx_ctl_table_info_get(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_table_match_field_info_get, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_table_match_field_info_get)
int
rte_swx_ctl_table_match_field_info_get(struct rte_swx_pipeline *p,
uint32_t table_id,
@@ -10859,7 +10859,7 @@ rte_swx_ctl_table_match_field_info_get(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_table_action_info_get, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_table_action_info_get)
int
rte_swx_ctl_table_action_info_get(struct rte_swx_pipeline *p,
uint32_t table_id,
@@ -10883,7 +10883,7 @@ rte_swx_ctl_table_action_info_get(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_table_ops_get, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_table_ops_get)
int
rte_swx_ctl_table_ops_get(struct rte_swx_pipeline *p,
uint32_t table_id,
@@ -10910,7 +10910,7 @@ rte_swx_ctl_table_ops_get(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_selector_info_get, 21.08)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_selector_info_get)
int
rte_swx_ctl_selector_info_get(struct rte_swx_pipeline *p,
uint32_t selector_id,
@@ -10934,7 +10934,7 @@ rte_swx_ctl_selector_info_get(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_selector_group_id_field_info_get, 21.08)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_selector_group_id_field_info_get)
int
rte_swx_ctl_selector_group_id_field_info_get(struct rte_swx_pipeline *p,
uint32_t selector_id,
@@ -10957,7 +10957,7 @@ rte_swx_ctl_selector_group_id_field_info_get(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_selector_field_info_get, 21.08)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_selector_field_info_get)
int
rte_swx_ctl_selector_field_info_get(struct rte_swx_pipeline *p,
uint32_t selector_id,
@@ -10983,7 +10983,7 @@ rte_swx_ctl_selector_field_info_get(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_selector_member_id_field_info_get, 21.08)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_selector_member_id_field_info_get)
int
rte_swx_ctl_selector_member_id_field_info_get(struct rte_swx_pipeline *p,
uint32_t selector_id,
@@ -11006,7 +11006,7 @@ rte_swx_ctl_selector_member_id_field_info_get(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_learner_info_get, 21.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_learner_info_get)
int
rte_swx_ctl_learner_info_get(struct rte_swx_pipeline *p,
uint32_t learner_id,
@@ -11032,7 +11032,7 @@ rte_swx_ctl_learner_info_get(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_learner_match_field_info_get, 21.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_learner_match_field_info_get)
int
rte_swx_ctl_learner_match_field_info_get(struct rte_swx_pipeline *p,
uint32_t learner_id,
@@ -11058,7 +11058,7 @@ rte_swx_ctl_learner_match_field_info_get(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_learner_action_info_get, 21.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_learner_action_info_get)
int
rte_swx_ctl_learner_action_info_get(struct rte_swx_pipeline *p,
uint32_t learner_id,
@@ -11085,7 +11085,7 @@ rte_swx_ctl_learner_action_info_get(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_learner_timeout_get, 22.07)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_learner_timeout_get)
int
rte_swx_ctl_pipeline_learner_timeout_get(struct rte_swx_pipeline *p,
uint32_t learner_id,
@@ -11105,7 +11105,7 @@ rte_swx_ctl_pipeline_learner_timeout_get(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_learner_timeout_set, 22.07)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_learner_timeout_set)
int
rte_swx_ctl_pipeline_learner_timeout_set(struct rte_swx_pipeline *p,
uint32_t learner_id,
@@ -11137,7 +11137,7 @@ rte_swx_ctl_pipeline_learner_timeout_set(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_table_state_get, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_table_state_get)
int
rte_swx_pipeline_table_state_get(struct rte_swx_pipeline *p,
struct rte_swx_table_state **table_state)
@@ -11149,7 +11149,7 @@ rte_swx_pipeline_table_state_get(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_table_state_set, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_table_state_set)
int
rte_swx_pipeline_table_state_set(struct rte_swx_pipeline *p,
struct rte_swx_table_state *table_state)
@@ -11161,7 +11161,7 @@ rte_swx_pipeline_table_state_set(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_port_in_stats_read, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_port_in_stats_read)
int
rte_swx_ctl_pipeline_port_in_stats_read(struct rte_swx_pipeline *p,
uint32_t port_id,
@@ -11180,7 +11180,7 @@ rte_swx_ctl_pipeline_port_in_stats_read(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_port_out_stats_read, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_port_out_stats_read)
int
rte_swx_ctl_pipeline_port_out_stats_read(struct rte_swx_pipeline *p,
uint32_t port_id,
@@ -11199,7 +11199,7 @@ rte_swx_ctl_pipeline_port_out_stats_read(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_table_stats_read, 21.05)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_table_stats_read)
int
rte_swx_ctl_pipeline_table_stats_read(struct rte_swx_pipeline *p,
const char *table_name,
@@ -11227,7 +11227,7 @@ rte_swx_ctl_pipeline_table_stats_read(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_selector_stats_read, 21.08)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_selector_stats_read)
int
rte_swx_ctl_pipeline_selector_stats_read(struct rte_swx_pipeline *p,
const char *selector_name,
@@ -11247,7 +11247,7 @@ rte_swx_ctl_pipeline_selector_stats_read(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_learner_stats_read, 21.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_learner_stats_read)
int
rte_swx_ctl_pipeline_learner_stats_read(struct rte_swx_pipeline *p,
const char *learner_name,
@@ -11281,7 +11281,7 @@ rte_swx_ctl_pipeline_learner_stats_read(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_regarray_info_get, 21.05)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_regarray_info_get)
int
rte_swx_ctl_regarray_info_get(struct rte_swx_pipeline *p,
uint32_t regarray_id,
@@ -11301,7 +11301,7 @@ rte_swx_ctl_regarray_info_get(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_regarray_read, 21.05)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_regarray_read)
int
rte_swx_ctl_pipeline_regarray_read(struct rte_swx_pipeline *p,
const char *regarray_name,
@@ -11323,7 +11323,7 @@ rte_swx_ctl_pipeline_regarray_read(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_regarray_write, 21.05)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_regarray_write)
int
rte_swx_ctl_pipeline_regarray_write(struct rte_swx_pipeline *p,
const char *regarray_name,
@@ -11345,7 +11345,7 @@ rte_swx_ctl_pipeline_regarray_write(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_metarray_info_get, 21.05)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_metarray_info_get)
int
rte_swx_ctl_metarray_info_get(struct rte_swx_pipeline *p,
uint32_t metarray_id,
@@ -11365,7 +11365,7 @@ rte_swx_ctl_metarray_info_get(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_meter_profile_add, 21.05)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_meter_profile_add)
int
rte_swx_ctl_meter_profile_add(struct rte_swx_pipeline *p,
const char *name,
@@ -11398,7 +11398,7 @@ rte_swx_ctl_meter_profile_add(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_meter_profile_delete, 21.05)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_meter_profile_delete)
int
rte_swx_ctl_meter_profile_delete(struct rte_swx_pipeline *p,
const char *name)
@@ -11419,7 +11419,7 @@ rte_swx_ctl_meter_profile_delete(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_meter_reset, 21.05)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_meter_reset)
int
rte_swx_ctl_meter_reset(struct rte_swx_pipeline *p,
const char *metarray_name,
@@ -11448,7 +11448,7 @@ rte_swx_ctl_meter_reset(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_meter_set, 21.05)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_meter_set)
int
rte_swx_ctl_meter_set(struct rte_swx_pipeline *p,
const char *metarray_name,
@@ -11485,7 +11485,7 @@ rte_swx_ctl_meter_set(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_meter_stats_read, 21.05)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_meter_stats_read)
int
rte_swx_ctl_meter_stats_read(struct rte_swx_pipeline *p,
const char *metarray_name,
@@ -11514,7 +11514,7 @@ rte_swx_ctl_meter_stats_read(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_mirroring_session_set, 20.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_mirroring_session_set)
int
rte_swx_ctl_pipeline_mirroring_session_set(struct rte_swx_pipeline *p,
uint32_t session_id,
@@ -11721,7 +11721,7 @@ rte_swx_ctl_pipeline_table_entry_id_get(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_regarray_read_with_key, 22.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_regarray_read_with_key)
int
rte_swx_ctl_pipeline_regarray_read_with_key(struct rte_swx_pipeline *p,
const char *regarray_name,
@@ -11739,7 +11739,7 @@ rte_swx_ctl_pipeline_regarray_read_with_key(struct rte_swx_pipeline *p,
return rte_swx_ctl_pipeline_regarray_read(p, regarray_name, entry_id, value);
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_regarray_write_with_key, 22.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_regarray_write_with_key)
int
rte_swx_ctl_pipeline_regarray_write_with_key(struct rte_swx_pipeline *p,
const char *regarray_name,
@@ -11757,7 +11757,7 @@ rte_swx_ctl_pipeline_regarray_write_with_key(struct rte_swx_pipeline *p,
return rte_swx_ctl_pipeline_regarray_write(p, regarray_name, entry_id, value);
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_meter_reset_with_key, 22.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_meter_reset_with_key)
int
rte_swx_ctl_meter_reset_with_key(struct rte_swx_pipeline *p,
const char *metarray_name,
@@ -11774,7 +11774,7 @@ rte_swx_ctl_meter_reset_with_key(struct rte_swx_pipeline *p,
return rte_swx_ctl_meter_reset(p, metarray_name, entry_id);
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_meter_set_with_key, 22.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_meter_set_with_key)
int
rte_swx_ctl_meter_set_with_key(struct rte_swx_pipeline *p,
const char *metarray_name,
@@ -11792,7 +11792,7 @@ rte_swx_ctl_meter_set_with_key(struct rte_swx_pipeline *p,
return rte_swx_ctl_meter_set(p, metarray_name, entry_id, profile_name);
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_meter_stats_read_with_key, 22.11)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_meter_stats_read_with_key)
int
rte_swx_ctl_meter_stats_read_with_key(struct rte_swx_pipeline *p,
const char *metarray_name,
@@ -11810,7 +11810,7 @@ rte_swx_ctl_meter_stats_read_with_key(struct rte_swx_pipeline *p,
return rte_swx_ctl_meter_stats_read(p, metarray_name, entry_id, stats);
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_rss_info_get, 23.03)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_rss_info_get)
int
rte_swx_ctl_rss_info_get(struct rte_swx_pipeline *p,
uint32_t rss_obj_id,
@@ -11831,7 +11831,7 @@ rte_swx_ctl_rss_info_get(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_rss_key_size_read, 23.03)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_rss_key_size_read)
int
rte_swx_ctl_pipeline_rss_key_size_read(struct rte_swx_pipeline *p,
const char *rss_name,
@@ -11856,7 +11856,7 @@ rte_swx_ctl_pipeline_rss_key_size_read(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_rss_key_read, 23.03)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_rss_key_read)
int
rte_swx_ctl_pipeline_rss_key_read(struct rte_swx_pipeline *p,
const char *rss_name,
@@ -11881,7 +11881,7 @@ rte_swx_ctl_pipeline_rss_key_read(struct rte_swx_pipeline *p,
return 0;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_ctl_pipeline_rss_key_write, 23.03)
+RTE_EXPORT_SYMBOL(rte_swx_ctl_pipeline_rss_key_write)
int
rte_swx_ctl_pipeline_rss_key_write(struct rte_swx_pipeline *p,
const char *rss_name,
@@ -14583,7 +14583,7 @@ pipeline_adjust(struct rte_swx_pipeline *p, struct instruction_group_list *igl)
instr_jmp_resolve(p->instructions, p->instruction_data, p->n_instructions);
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_codegen, 22.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_codegen)
int
rte_swx_pipeline_codegen(FILE *spec_file,
FILE *code_file,
@@ -14677,7 +14677,7 @@ rte_swx_pipeline_codegen(FILE *spec_file,
return status;
}
-RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_swx_pipeline_build_from_lib, 22.11)
+RTE_EXPORT_SYMBOL(rte_swx_pipeline_build_from_lib)
int
rte_swx_pipeline_build_from_lib(struct rte_swx_pipeline **pipeline,
const char *name,
diff --git a/lib/pipeline/rte_swx_pipeline.h b/lib/pipeline/rte_swx_pipeline.h
index 882bd4bf6f..1eccba4753 100644
--- a/lib/pipeline/rte_swx_pipeline.h
+++ b/lib/pipeline/rte_swx_pipeline.h
@@ -12,8 +12,6 @@
#include <stdint.h>
#include <stdio.h>
-#include <rte_compat.h>
-
#include "rte_swx_port.h"
#include "rte_swx_table.h"
#include "rte_swx_extern.h"
@@ -52,7 +50,6 @@ struct rte_swx_pipeline;
* @return
* Valid pipeline handle if found or NULL otherwise.
*/
-__rte_experimental
struct rte_swx_pipeline *
rte_swx_pipeline_find(const char *name);
@@ -72,7 +69,6 @@ rte_swx_pipeline_find(const char *name);
* -ENOMEM: Not enough space/cannot allocate memory;
* -EEXIST: Pipeline with this name already exists.
*/
-__rte_experimental
int
rte_swx_pipeline_config(struct rte_swx_pipeline **p,
const char *name,
@@ -97,7 +93,6 @@ rte_swx_pipeline_config(struct rte_swx_pipeline **p,
* -ENOMEM: Not enough space/cannot allocate memory;
* -EEXIST: Input port type with this name already exists.
*/
-__rte_experimental
int
rte_swx_pipeline_port_in_type_register(struct rte_swx_pipeline *p,
const char *name,
@@ -120,7 +115,6 @@ rte_swx_pipeline_port_in_type_register(struct rte_swx_pipeline *p,
* -ENOMEM: Not enough space/cannot allocate memory;
* -ENODEV: Input port object creation error.
*/
-__rte_experimental
int
rte_swx_pipeline_port_in_config(struct rte_swx_pipeline *p,
uint32_t port_id,
@@ -146,7 +140,6 @@ rte_swx_pipeline_port_in_config(struct rte_swx_pipeline *p,
* -ENOMEM: Not enough space/cannot allocate memory;
* -EEXIST: Output port type with this name already exists.
*/
-__rte_experimental
int
rte_swx_pipeline_port_out_type_register(struct rte_swx_pipeline *p,
const char *name,
@@ -169,7 +162,6 @@ rte_swx_pipeline_port_out_type_register(struct rte_swx_pipeline *p,
* -ENOMEM: Not enough space/cannot allocate memory;
* -ENODEV: Output port object creation error.
*/
-__rte_experimental
int
rte_swx_pipeline_port_out_config(struct rte_swx_pipeline *p,
uint32_t port_id,
@@ -211,7 +203,6 @@ struct rte_swx_pipeline_mirroring_params {
* -ENOMEM: Not enough memory;
* -EEXIST: Pipeline was already built successfully.
*/
-__rte_experimental
int
rte_swx_pipeline_mirroring_config(struct rte_swx_pipeline *p,
struct rte_swx_pipeline_mirroring_params *params);
@@ -242,7 +233,6 @@ rte_swx_pipeline_mirroring_config(struct rte_swx_pipeline *p,
* -ENOMEM: Not enough space/cannot allocate memory;
* -EEXIST: Extern type with this name already exists.
*/
-__rte_experimental
int
rte_swx_pipeline_extern_type_register(struct rte_swx_pipeline *p,
const char *name,
@@ -268,7 +258,6 @@ rte_swx_pipeline_extern_type_register(struct rte_swx_pipeline *p,
* -EEXIST: Member function with this name already exists for this type;
* -ENOSPC: Maximum number of member functions reached for this type.
*/
-__rte_experimental
int
rte_swx_pipeline_extern_type_member_func_register(struct rte_swx_pipeline *p,
const char *extern_type_name,
@@ -295,7 +284,6 @@ rte_swx_pipeline_extern_type_member_func_register(struct rte_swx_pipeline *p,
* -EEXIST: Extern object with this name already exists;
* -ENODEV: Extern object constructor error.
*/
-__rte_experimental
int
rte_swx_pipeline_extern_object_config(struct rte_swx_pipeline *p,
const char *extern_type_name,
@@ -321,7 +309,6 @@ rte_swx_pipeline_extern_object_config(struct rte_swx_pipeline *p,
* -ENOMEM: Not enough space/cannot allocate memory;
* -EEXIST: Extern function with this name already exists.
*/
-__rte_experimental
int
rte_swx_pipeline_extern_func_register(struct rte_swx_pipeline *p,
const char *name,
@@ -346,7 +333,6 @@ rte_swx_pipeline_extern_func_register(struct rte_swx_pipeline *p,
* -ENOMEM: Not enough space/cannot allocate memory;
* -EEXIST: Hash function with this name already exists.
*/
-__rte_experimental
int
rte_swx_pipeline_hash_func_register(struct rte_swx_pipeline *p,
const char *name,
@@ -369,7 +355,6 @@ rte_swx_pipeline_hash_func_register(struct rte_swx_pipeline *p,
* -ENOMEM: Not enough space/cannot allocate memory;
* -EEXIST: RSS object with this name already exists.
*/
-__rte_experimental
int
rte_swx_pipeline_rss_config(struct rte_swx_pipeline *p,
const char *name);
@@ -425,7 +410,6 @@ struct rte_swx_field_params {
* -ENOMEM: Not enough space/cannot allocate memory;
* -EEXIST: Struct type with this name already exists.
*/
-__rte_experimental
int
rte_swx_pipeline_struct_type_register(struct rte_swx_pipeline *p,
const char *name,
@@ -449,7 +433,6 @@ rte_swx_pipeline_struct_type_register(struct rte_swx_pipeline *p,
* -EEXIST: Header with this name already exists;
* -ENOSPC: Maximum number of headers reached for the pipeline.
*/
-__rte_experimental
int
rte_swx_pipeline_packet_header_register(struct rte_swx_pipeline *p,
const char *name,
@@ -466,7 +449,6 @@ rte_swx_pipeline_packet_header_register(struct rte_swx_pipeline *p,
* 0 on success or the following error codes otherwise:
* -EINVAL: Invalid argument.
*/
-__rte_experimental
int
rte_swx_pipeline_packet_metadata_register(struct rte_swx_pipeline *p,
const char *struct_type_name);
@@ -601,7 +583,6 @@ rte_swx_pipeline_packet_metadata_register(struct rte_swx_pipeline *p,
* -ENOMEM: Not enough space/cannot allocate memory;
* -EEXIST: Action with this name already exists.
*/
-__rte_experimental
int
rte_swx_pipeline_action_config(struct rte_swx_pipeline *p,
const char *name,
@@ -630,7 +611,6 @@ rte_swx_pipeline_action_config(struct rte_swx_pipeline *p,
* -ENOMEM: Not enough space/cannot allocate memory;
* -EEXIST: Table type with this name already exists.
*/
-__rte_experimental
int
rte_swx_pipeline_table_type_register(struct rte_swx_pipeline *p,
const char *name,
@@ -739,7 +719,6 @@ struct rte_swx_pipeline_table_params {
* -EEXIST: Table with this name already exists;
* -ENODEV: Table creation error.
*/
-__rte_experimental
int
rte_swx_pipeline_table_config(struct rte_swx_pipeline *p,
const char *name,
@@ -793,7 +772,6 @@ struct rte_swx_pipeline_selector_params {
* -EEXIST: Selector table with this name already exists;
* -ENODEV: Selector table creation error.
*/
-__rte_experimental
int
rte_swx_pipeline_selector_config(struct rte_swx_pipeline *p,
const char *name,
@@ -881,7 +859,6 @@ struct rte_swx_pipeline_learner_params {
* -EEXIST: Learner table with this name already exists;
* -ENODEV: Learner table creation error.
*/
-__rte_experimental
int
rte_swx_pipeline_learner_config(struct rte_swx_pipeline *p,
const char *name,
@@ -907,7 +884,6 @@ rte_swx_pipeline_learner_config(struct rte_swx_pipeline *p,
* -ENOMEM: Not enough space/cannot allocate memory;
* -EEXIST: Register array with this name already exists.
*/
-__rte_experimental
int
rte_swx_pipeline_regarray_config(struct rte_swx_pipeline *p,
const char *name,
@@ -930,7 +906,6 @@ rte_swx_pipeline_regarray_config(struct rte_swx_pipeline *p,
* -ENOMEM: Not enough space/cannot allocate memory;
* -EEXIST: Meter array with this name already exists.
*/
-__rte_experimental
int
rte_swx_pipeline_metarray_config(struct rte_swx_pipeline *p,
const char *name,
@@ -950,7 +925,6 @@ rte_swx_pipeline_metarray_config(struct rte_swx_pipeline *p,
* -EINVAL: Invalid argument;
* -ENOMEM: Not enough space/cannot allocate memory.
*/
-__rte_experimental
int
rte_swx_pipeline_instructions_config(struct rte_swx_pipeline *p,
const char **instructions,
@@ -971,7 +945,6 @@ rte_swx_pipeline_instructions_config(struct rte_swx_pipeline *p,
* -ENOMEM: Not enough space/cannot allocate memory;
* -EEXIST: Pipeline was already built successfully.
*/
-__rte_experimental
int
rte_swx_pipeline_build(struct rte_swx_pipeline *p);
@@ -993,7 +966,6 @@ rte_swx_pipeline_build(struct rte_swx_pipeline *p);
* -ENOMEM: Not enough space/cannot allocate memory;
* -EEXIST: Resource with the same name already exists.
*/
-__rte_experimental
int
rte_swx_pipeline_codegen(FILE *spec_file,
FILE *code_file,
@@ -1026,7 +998,6 @@ rte_swx_pipeline_codegen(FILE *spec_file,
* -EEXIST: Pipeline with this name already exists;
* -ENODEV: Extern object or table creation error.
*/
-__rte_experimental
int
rte_swx_pipeline_build_from_lib(struct rte_swx_pipeline **p,
const char *name,
@@ -1042,7 +1013,6 @@ rte_swx_pipeline_build_from_lib(struct rte_swx_pipeline **p,
* @param[in] n_instructions
* Number of instructions to execute.
*/
-__rte_experimental
void
rte_swx_pipeline_run(struct rte_swx_pipeline *p,
uint32_t n_instructions);
@@ -1056,7 +1026,6 @@ rte_swx_pipeline_run(struct rte_swx_pipeline *p,
* Pipeline handle.
* If p is NULL, no operation is performed.
*/
-__rte_experimental
void
rte_swx_pipeline_flush(struct rte_swx_pipeline *p);
@@ -1066,7 +1035,6 @@ rte_swx_pipeline_flush(struct rte_swx_pipeline *p);
* @param[in] p
* Pipeline handle.
*/
-__rte_experimental
void
rte_swx_pipeline_free(struct rte_swx_pipeline *p);
--
2.53.0
next prev parent reply other threads:[~2026-10-07 21:42 UTC|newest]
Thread overview: 30+ 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 ` [PATCH 10/20] pipeline: promote SWX IPsec " Stephen Hemminger
2026-10-07 21:39 ` Stephen Hemminger [this message]
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-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-12-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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.