The PDCP library was added in 23.07 and none of its functions have changed since. The whole library was experimental, including the inline packet pre and post process helpers, so there is nothing left to keep experimental once the symbols are promoted.
Signed-off-by: Stephen Hemminger <[email protected]> --- doc/guides/rel_notes/release_26_11.rst | 4 ++++ lib/pdcp/rte_pdcp.c | 10 ++++----- lib/pdcp/rte_pdcp.h | 29 -------------------------- lib/pdcp/rte_pdcp_group.h | 6 ------ 4 files changed, 9 insertions(+), 40 deletions(-) diff --git a/doc/guides/rel_notes/release_26_11.rst b/doc/guides/rel_notes/release_26_11.rst index 6055c1edee..1fb9251dbf 100644 --- a/doc/guides/rel_notes/release_26_11.rst +++ b/doc/guides/rel_notes/release_26_11.rst @@ -360,6 +360,10 @@ API Changes The ``rte_node_*`` control path functions date from 23.07 to 25.07 and are used by the graph application and the l3fwd-graph example. +* pdcp: Promoted the whole library API from experimental to stable. + The ``rte_pdcp_*`` functions are unchanged since the library was added + in 23.07. + * 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 diff --git a/lib/pdcp/rte_pdcp.c b/lib/pdcp/rte_pdcp.c index d21df8ab43..4bdb5c9adb 100644 --- a/lib/pdcp/rte_pdcp.c +++ b/lib/pdcp/rte_pdcp.c @@ -98,7 +98,7 @@ pdcp_dl_establish(struct rte_pdcp_entity *entity, const struct rte_pdcp_entity_c return 0; } -RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_pdcp_entity_establish, 23.07) +RTE_EXPORT_SYMBOL(rte_pdcp_entity_establish) struct rte_pdcp_entity * rte_pdcp_entity_establish(const struct rte_pdcp_entity_conf *conf) { @@ -199,7 +199,7 @@ pdcp_dl_release(struct rte_pdcp_entity *entity, struct rte_mbuf *out_mb[]) return nb_out; } -RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_pdcp_entity_release, 23.07) +RTE_EXPORT_SYMBOL(rte_pdcp_entity_release) int rte_pdcp_entity_release(struct rte_pdcp_entity *pdcp_entity, struct rte_mbuf *out_mb[]) { @@ -222,7 +222,7 @@ rte_pdcp_entity_release(struct rte_pdcp_entity *pdcp_entity, struct rte_mbuf *ou return nb_out; } -RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_pdcp_entity_suspend, 23.07) +RTE_EXPORT_SYMBOL(rte_pdcp_entity_suspend) int rte_pdcp_entity_suspend(struct rte_pdcp_entity *pdcp_entity, struct rte_mbuf *out_mb[]) @@ -250,7 +250,7 @@ rte_pdcp_entity_suspend(struct rte_pdcp_entity *pdcp_entity, return nb_out; } -RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_pdcp_control_pdu_create, 23.07) +RTE_EXPORT_SYMBOL(rte_pdcp_control_pdu_create) struct rte_mbuf * rte_pdcp_control_pdu_create(struct rte_pdcp_entity *pdcp_entity, enum rte_pdcp_ctrl_pdu_type type) @@ -291,7 +291,7 @@ rte_pdcp_control_pdu_create(struct rte_pdcp_entity *pdcp_entity, return m; } -RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_pdcp_t_reordering_expiry_handle, 23.07) +RTE_EXPORT_SYMBOL(rte_pdcp_t_reordering_expiry_handle) uint16_t rte_pdcp_t_reordering_expiry_handle(const struct rte_pdcp_entity *entity, struct rte_mbuf *out_mb[]) { diff --git a/lib/pdcp/rte_pdcp.h b/lib/pdcp/rte_pdcp.h index 15fcbf9607..b8aad9f525 100644 --- a/lib/pdcp/rte_pdcp.h +++ b/lib/pdcp/rte_pdcp.h @@ -13,7 +13,6 @@ * A framework for PDCP protocol processing. */ -#include <rte_compat.h> #include <rte_common.h> #include <rte_mempool.h> #include <rte_pdcp_hdr.h> @@ -161,9 +160,6 @@ struct rte_pdcp_entity_conf { /* >8 End of structure rte_pdcp_entity_conf. */ /** - * @warning - * @b EXPERIMENTAL: this API may change without prior notice. - * * 5.1.1 PDCP entity establishment * * Establish PDCP entity based on provided input configuration. @@ -174,14 +170,10 @@ struct rte_pdcp_entity_conf { * - Valid handle if success * - NULL in case of failure. rte_errno will be set to error code. */ -__rte_experimental struct rte_pdcp_entity * rte_pdcp_entity_establish(const struct rte_pdcp_entity_conf *conf); /** - * @warning - * @b EXPERIMENTAL: this API may change without prior notice. - * * 5.1.3 PDCP entity release * * Release PDCP entity. @@ -204,15 +196,11 @@ rte_pdcp_entity_establish(const struct rte_pdcp_entity_conf *conf); * - >0: Success and the number of packets returned in out_mb * - <0: Error code in case of failures */ -__rte_experimental int rte_pdcp_entity_release(struct rte_pdcp_entity *pdcp_entity, struct rte_mbuf *out_mb[]); /** - * @warning - * @b EXPERIMENTAL: this API may change without prior notice. - * * 5.1.4 PDCP entity suspend * * Suspend PDCP entity. @@ -233,15 +221,11 @@ rte_pdcp_entity_release(struct rte_pdcp_entity *pdcp_entity, * - >0: Success and the number of packets returned in out_mb. * - <0: Error code in case of failures. */ -__rte_experimental int rte_pdcp_entity_suspend(struct rte_pdcp_entity *pdcp_entity, struct rte_mbuf *out_mb[]); /** - * @warning - * @b EXPERIMENTAL: this API may change without prior notice. - * * Create control PDU packet of the `type` specified. The control PDU packet * would be allocated from *rte_pdcp_entity_conf.ctrl_pdu_pool* by lib PDCP. * @@ -253,15 +237,11 @@ rte_pdcp_entity_suspend(struct rte_pdcp_entity *pdcp_entity, * - Control PDU generated, in case of success. * - NULL in case of failure. rte_errno will be set to error code. */ -__rte_experimental struct rte_mbuf * rte_pdcp_control_pdu_create(struct rte_pdcp_entity *pdcp_entity, enum rte_pdcp_ctrl_pdu_type type); /** - * @warning - * @b EXPERIMENTAL: this API may change without prior notice. - * * For input mbufs and given PDCP entity pre-process the mbufs and prepare * crypto ops that can be enqueued to the cryptodev associated with given * session. Only error packets would be moved returned in the input buffer, @@ -284,7 +264,6 @@ rte_pdcp_control_pdu_create(struct rte_pdcp_entity *pdcp_entity, * @return * Count of crypto_ops prepared. */ -__rte_experimental static inline uint16_t rte_pdcp_pkt_pre_process(const struct rte_pdcp_entity *entity, struct rte_mbuf *mb[], struct rte_crypto_op *cop[], @@ -294,9 +273,6 @@ rte_pdcp_pkt_pre_process(const struct rte_pdcp_entity *entity, } /** - * @warning - * @b EXPERIMENTAL: this API may change without prior notice. - * * For input mbufs and given PDCP entity, perform PDCP post-processing of the mbufs. * * Input mbufs are the ones retrieved from rte_crypto_ops dequeued from cryptodev @@ -325,7 +301,6 @@ rte_pdcp_pkt_pre_process(const struct rte_pdcp_entity *entity, * @return * Count of packets returned in *out_mb* buffer. */ -__rte_experimental static inline uint16_t rte_pdcp_pkt_post_process(const struct rte_pdcp_entity *entity, struct rte_mbuf *in_mb[], @@ -336,9 +311,6 @@ rte_pdcp_pkt_post_process(const struct rte_pdcp_entity *entity, } /** - * @warning - * @b EXPERIMENTAL: this API may change without prior notice - * * 5.2.2.2 Actions when a t-Reordering expires * * When t-Reordering timer expires, PDCP is required to slide the reception @@ -358,7 +330,6 @@ rte_pdcp_pkt_post_process(const struct rte_pdcp_entity *entity, * @return * Number of packets returned in *out_mb* buffer. */ -__rte_experimental uint16_t rte_pdcp_t_reordering_expiry_handle(const struct rte_pdcp_entity *entity, struct rte_mbuf *out_mb[]); diff --git a/lib/pdcp/rte_pdcp_group.h b/lib/pdcp/rte_pdcp_group.h index f6a94ff587..cbc2111bdf 100644 --- a/lib/pdcp/rte_pdcp_group.h +++ b/lib/pdcp/rte_pdcp_group.h @@ -37,9 +37,6 @@ struct rte_pdcp_group { }; /** - * @warning - * @b EXPERIMENTAL: this API may change without prior notice. - * * Take crypto-op as an input and extract pointer to related PDCP entity. * @param cop * The address of an input *rte_crypto_op* structure. @@ -56,9 +53,6 @@ rte_pdcp_en_from_cop(const struct rte_crypto_op *cop) } /** - * @warning - * @b EXPERIMENTAL: this API may change without prior notice. - * * Take as input completed crypto ops, extract related mbufs and group them by * *rte_pdcp_entity* they belong to. Mbuf for which the crypto operation has * failed would be flagged using *RTE_MBUF_F_RX_SEC_OFFLOAD_FAILED* flag -- 2.53.0

