From 5dfcb689845876b8eb8c7bbe3a6527f7b21f273a Mon Sep 17 00:00:00 2001 From: Nithin Dabilpuram Date: Thu, 10 Sep 2020 15:39:29 +0530 Subject: [PATCH] ethdev: mark all traffic manager API as experimental This patch marks all traffic manager API as experimental as per deprecation notice[1] and discussion[2] mentioned in following threads. [1] https://mails.dpdk.org/archives/dev/2020-May/166221.html [2] https://mails.dpdk.org/archives/dev/2020-April/165364.html Signed-off-by: Nithin Dabilpuram Acked-by: Cristian Dumitrescu Reviewed-by: Ferruh Yigit --- doc/guides/rel_notes/deprecation.rst | 7 --- lib/librte_ethdev/rte_ethdev_version.map | 62 ++++++++++++------------ lib/librte_ethdev/rte_tm.h | 33 ++++++++++++- 3 files changed, 64 insertions(+), 38 deletions(-) diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst index f9b72acb84..c632c47ef8 100644 --- a/doc/guides/rel_notes/deprecation.rst +++ b/doc/guides/rel_notes/deprecation.rst @@ -207,13 +207,6 @@ Deprecation Notices break the ABI checks, that is why change is planned for 20.11. The list of internal APIs are mainly ones listed in ``rte_ethdev_driver.h``. -* traffic manager: All traffic manager API's in ``rte_tm.h`` were mistakenly made - ABI stable in the v19.11 release. The TM maintainer and other contributors have - agreed to keep the TM APIs as experimental in expectation of additional spec - improvements. Therefore, all APIs in ``rte_tm.h`` will be marked back as - experimental in v20.11 DPDK release. For more details, please see `the thread - `_. - * pmd_dpaa: The API ``rte_pmd_dpaa_set_tx_loopback`` will have extended ``port_id`` definition from ``uint8_t`` to ``uint16_t``. diff --git a/lib/librte_ethdev/rte_ethdev_version.map b/lib/librte_ethdev/rte_ethdev_version.map index 02081d9de9..6df1f14d90 100644 --- a/lib/librte_ethdev/rte_ethdev_version.map +++ b/lib/librte_ethdev/rte_ethdev_version.map @@ -133,36 +133,6 @@ DPDK_21 { rte_flow_isolate; rte_flow_query; rte_flow_validate; - rte_tm_capabilities_get; - rte_tm_get_number_of_leaf_nodes; - rte_tm_hierarchy_commit; - rte_tm_level_capabilities_get; - rte_tm_mark_ip_dscp; - rte_tm_mark_ip_ecn; - rte_tm_mark_vlan_dei; - rte_tm_node_add; - rte_tm_node_capabilities_get; - rte_tm_node_cman_update; - rte_tm_node_delete; - rte_tm_node_parent_update; - rte_tm_node_resume; - rte_tm_node_shaper_update; - rte_tm_node_shared_shaper_update; - rte_tm_node_shared_wred_context_update; - rte_tm_node_stats_read; - rte_tm_node_stats_update; - rte_tm_node_suspend; - rte_tm_node_type_get; - rte_tm_node_wfq_weight_mode_update; - rte_tm_node_wred_context_update; - rte_tm_shaper_profile_add; - rte_tm_shaper_profile_delete; - rte_tm_shared_shaper_add_update; - rte_tm_shared_shaper_delete; - rte_tm_shared_wred_context_add_update; - rte_tm_shared_wred_context_delete; - rte_tm_wred_profile_add; - rte_tm_wred_profile_delete; local: *; }; @@ -239,6 +209,38 @@ EXPERIMENTAL { __rte_ethdev_trace_rx_burst; __rte_ethdev_trace_tx_burst; rte_flow_get_aged_flows; + + # Marked as experimental in 20.11 + rte_tm_capabilities_get; + rte_tm_get_number_of_leaf_nodes; + rte_tm_hierarchy_commit; + rte_tm_level_capabilities_get; + rte_tm_mark_ip_dscp; + rte_tm_mark_ip_ecn; + rte_tm_mark_vlan_dei; + rte_tm_node_add; + rte_tm_node_capabilities_get; + rte_tm_node_cman_update; + rte_tm_node_delete; + rte_tm_node_parent_update; + rte_tm_node_resume; + rte_tm_node_shaper_update; + rte_tm_node_shared_shaper_update; + rte_tm_node_shared_wred_context_update; + rte_tm_node_stats_read; + rte_tm_node_stats_update; + rte_tm_node_suspend; + rte_tm_node_type_get; + rte_tm_node_wfq_weight_mode_update; + rte_tm_node_wred_context_update; + rte_tm_shaper_profile_add; + rte_tm_shaper_profile_delete; + rte_tm_shared_shaper_add_update; + rte_tm_shared_shaper_delete; + rte_tm_shared_wred_context_add_update; + rte_tm_shared_wred_context_delete; + rte_tm_wred_profile_add; + rte_tm_wred_profile_delete; }; INTERNAL { diff --git a/lib/librte_ethdev/rte_tm.h b/lib/librte_ethdev/rte_tm.h index f9c0cf3f90..c80c0bc794 100644 --- a/lib/librte_ethdev/rte_tm.h +++ b/lib/librte_ethdev/rte_tm.h @@ -16,7 +16,8 @@ * traffic shaping, congestion management, packet marking, etc. * * @warning - * @b EXPERIMENTAL: this API may change without prior notice + * @b EXPERIMENTAL: + * All functions in this file may be changed or removed without prior notice. */ #include @@ -1050,6 +1051,7 @@ struct rte_tm_error { * @return * 0 on success, non-zero error code otherwise. */ +__rte_experimental int rte_tm_get_number_of_leaf_nodes(uint16_t port_id, uint32_t *n_leaf_nodes, @@ -1074,6 +1076,7 @@ rte_tm_get_number_of_leaf_nodes(uint16_t port_id, * @return * 0 on success, non-zero error code otherwise. */ +__rte_experimental int rte_tm_node_type_get(uint16_t port_id, uint32_t node_id, @@ -1092,6 +1095,7 @@ rte_tm_node_type_get(uint16_t port_id, * @return * 0 on success, non-zero error code otherwise. */ +__rte_experimental int rte_tm_capabilities_get(uint16_t port_id, struct rte_tm_capabilities *cap, @@ -1112,6 +1116,7 @@ rte_tm_capabilities_get(uint16_t port_id, * @return * 0 on success, non-zero error code otherwise. */ +__rte_experimental int rte_tm_level_capabilities_get(uint16_t port_id, uint32_t level_id, @@ -1132,6 +1137,7 @@ rte_tm_level_capabilities_get(uint16_t port_id, * @return * 0 on success, non-zero error code otherwise. */ +__rte_experimental int rte_tm_node_capabilities_get(uint16_t port_id, uint32_t node_id, @@ -1157,6 +1163,7 @@ rte_tm_node_capabilities_get(uint16_t port_id, * * @see struct rte_tm_capabilities::cman_wred_context_n_max */ +__rte_experimental int rte_tm_wred_profile_add(uint16_t port_id, uint32_t wred_profile_id, @@ -1180,6 +1187,7 @@ rte_tm_wred_profile_add(uint16_t port_id, * * @see struct rte_tm_capabilities::cman_wred_context_n_max */ +__rte_experimental int rte_tm_wred_profile_delete(uint16_t port_id, uint32_t wred_profile_id, @@ -1211,6 +1219,7 @@ rte_tm_wred_profile_delete(uint16_t port_id, * * @see struct rte_tm_capabilities::cman_wred_context_shared_n_max */ +__rte_experimental int rte_tm_shared_wred_context_add_update(uint16_t port_id, uint32_t shared_wred_context_id, @@ -1235,6 +1244,7 @@ rte_tm_shared_wred_context_add_update(uint16_t port_id, * * @see struct rte_tm_capabilities::cman_wred_context_shared_n_max */ +__rte_experimental int rte_tm_shared_wred_context_delete(uint16_t port_id, uint32_t shared_wred_context_id, @@ -1259,6 +1269,7 @@ rte_tm_shared_wred_context_delete(uint16_t port_id, * * @see struct rte_tm_capabilities::shaper_n_max */ +__rte_experimental int rte_tm_shaper_profile_add(uint16_t port_id, uint32_t shaper_profile_id, @@ -1282,6 +1293,7 @@ rte_tm_shaper_profile_add(uint16_t port_id, * * @see struct rte_tm_capabilities::shaper_n_max */ +__rte_experimental int rte_tm_shaper_profile_delete(uint16_t port_id, uint32_t shaper_profile_id, @@ -1311,6 +1323,7 @@ rte_tm_shaper_profile_delete(uint16_t port_id, * * @see struct rte_tm_capabilities::shaper_shared_n_max */ +__rte_experimental int rte_tm_shared_shaper_add_update(uint16_t port_id, uint32_t shared_shaper_id, @@ -1334,6 +1347,7 @@ rte_tm_shared_shaper_add_update(uint16_t port_id, * * @see struct rte_tm_capabilities::shaper_shared_n_max */ +__rte_experimental int rte_tm_shared_shaper_delete(uint16_t port_id, uint32_t shared_shaper_id, @@ -1402,6 +1416,7 @@ rte_tm_shared_shaper_delete(uint16_t port_id, * @see RTE_TM_NODE_LEVEL_ID_ANY * @see struct rte_tm_capabilities */ +__rte_experimental int rte_tm_node_add(uint16_t port_id, uint32_t node_id, @@ -1435,6 +1450,7 @@ rte_tm_node_add(uint16_t port_id, * * @see RTE_TM_UPDATE_NODE_ADD_DELETE */ +__rte_experimental int rte_tm_node_delete(uint16_t port_id, uint32_t node_id, @@ -1459,6 +1475,7 @@ rte_tm_node_delete(uint16_t port_id, * @see rte_tm_node_resume() * @see RTE_TM_UPDATE_NODE_SUSPEND_RESUME */ +__rte_experimental int rte_tm_node_suspend(uint16_t port_id, uint32_t node_id, @@ -1482,6 +1499,7 @@ rte_tm_node_suspend(uint16_t port_id, * @see rte_tm_node_suspend() * @see RTE_TM_UPDATE_NODE_SUSPEND_RESUME */ +__rte_experimental int rte_tm_node_resume(uint16_t port_id, uint32_t node_id, @@ -1523,6 +1541,7 @@ rte_tm_node_resume(uint16_t port_id, * @see rte_tm_node_add() * @see rte_tm_node_delete() */ +__rte_experimental int rte_tm_hierarchy_commit(uint16_t port_id, int clear_on_fail, @@ -1563,6 +1582,7 @@ rte_tm_hierarchy_commit(uint16_t port_id, * @see RTE_TM_UPDATE_NODE_PARENT_KEEP_LEVEL * @see RTE_TM_UPDATE_NODE_PARENT_CHANGE_LEVEL */ +__rte_experimental int rte_tm_node_parent_update(uint16_t port_id, uint32_t node_id, @@ -1592,6 +1612,7 @@ rte_tm_node_parent_update(uint16_t port_id, * * @see struct rte_tm_capabilities::shaper_private_n_max */ +__rte_experimental int rte_tm_node_shaper_update(uint16_t port_id, uint32_t node_id, @@ -1619,6 +1640,7 @@ rte_tm_node_shaper_update(uint16_t port_id, * * @see struct rte_tm_capabilities::shaper_shared_n_max */ +__rte_experimental int rte_tm_node_shared_shaper_update(uint16_t port_id, uint32_t node_id, @@ -1646,6 +1668,7 @@ rte_tm_node_shared_shaper_update(uint16_t port_id, * @see enum rte_tm_stats_type * @see RTE_TM_UPDATE_NODE_STATS */ +__rte_experimental int rte_tm_node_stats_update(uint16_t port_id, uint32_t node_id, @@ -1674,6 +1697,7 @@ rte_tm_node_stats_update(uint16_t port_id, * @see RTE_TM_UPDATE_NODE_WFQ_WEIGHT_MODE * @see RTE_TM_UPDATE_NODE_N_SP_PRIORITIES */ +__rte_experimental int rte_tm_node_wfq_weight_mode_update(uint16_t port_id, uint32_t node_id, @@ -1697,6 +1721,7 @@ rte_tm_node_wfq_weight_mode_update(uint16_t port_id, * * @see RTE_TM_UPDATE_NODE_CMAN */ +__rte_experimental int rte_tm_node_cman_update(uint16_t port_id, uint32_t node_id, @@ -1721,6 +1746,7 @@ rte_tm_node_cman_update(uint16_t port_id, * * @see struct rte_tm_capabilities::cman_wred_context_private_n_max */ +__rte_experimental int rte_tm_node_wred_context_update(uint16_t port_id, uint32_t node_id, @@ -1746,6 +1772,7 @@ rte_tm_node_wred_context_update(uint16_t port_id, * * @see struct rte_tm_capabilities::cman_wred_context_shared_n_max */ +__rte_experimental int rte_tm_node_shared_wred_context_update(uint16_t port_id, uint32_t node_id, @@ -1778,6 +1805,7 @@ rte_tm_node_shared_wred_context_update(uint16_t port_id, * * @see enum rte_tm_stats_type */ +__rte_experimental int rte_tm_node_stats_read(uint16_t port_id, uint32_t node_id, @@ -1815,6 +1843,7 @@ rte_tm_node_stats_read(uint16_t port_id, * * @see struct rte_tm_capabilities::mark_vlan_dei_supported */ +__rte_experimental int rte_tm_mark_vlan_dei(uint16_t port_id, int mark_green, @@ -1865,6 +1894,7 @@ rte_tm_mark_vlan_dei(uint16_t port_id, * @see struct rte_tm_capabilities::mark_ip_ecn_tcp_supported * @see struct rte_tm_capabilities::mark_ip_ecn_sctp_supported */ +__rte_experimental int rte_tm_mark_ip_ecn(uint16_t port_id, int mark_green, @@ -1913,6 +1943,7 @@ rte_tm_mark_ip_ecn(uint16_t port_id, * * @see struct rte_tm_capabilities::mark_ip_dscp_supported */ +__rte_experimental int rte_tm_mark_ip_dscp(uint16_t port_id, int mark_green, -- 2.20.1