From patchwork Thu Sep 10 10:09:29 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nithin Dabilpuram X-Patchwork-Id: 77135 X-Patchwork-Delegate: ferruh.yigit@amd.com 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 53122A04B5; Thu, 10 Sep 2020 12:09:48 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id C5C171BEB3; Thu, 10 Sep 2020 12:09:47 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by dpdk.org (Postfix) with ESMTP id 7620A2BA8 for ; Thu, 10 Sep 2020 12:09:46 +0200 (CEST) Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 08AA9fPJ011613; Thu, 10 Sep 2020 03:09:41 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-type; s=pfpt0220; bh=VGIZHxm72VK8P8IR3rcPaCjOc2bHAF1pJ6uaxsUQx/U=; b=d+z+4z26dAfSqzONprZdbsdZXGqbCZ3PoyPchNdLFdsTamYAuWT5QhU2mk6x9R3Jwpfw CbNaUr/gO6RCMzymBS0TF0jRehvHcS1QuF++Nn/gpyGIibzve7M3mvah80LFORrnZwSC 0qYGWaSP/9FnKYN5E1HZXirNrHO/g9ZPuUC+kE/PP2PJ4RW0p4gmrNyxIYg7g87YBBJ4 W/90VaTpCS6nYliR+3FdUBnslxh7RONycPqUcQ7x2EBUvbCibxrDmPWQ8G4UKNIQQIO5 4i52SFkFeO/svLvusBYeo20yhMb/NyZajVFklfOvZZlEyBJVjrocZiEKDw0dtPn2AgtU Xw== Received: from sc-exch02.marvell.com ([199.233.58.182]) by mx0b-0016f401.pphosted.com with ESMTP id 33ff7m8n83-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Thu, 10 Sep 2020 03:09:41 -0700 Received: from DC5-EXCH01.marvell.com (10.69.176.38) by SC-EXCH02.marvell.com (10.93.176.82) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 10 Sep 2020 03:09:40 -0700 Received: from maili.marvell.com (10.69.176.80) by DC5-EXCH01.marvell.com (10.69.176.38) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Thu, 10 Sep 2020 03:09:40 -0700 Received: from hyd1588t430.marvell.com (unknown [10.29.52.204]) by maili.marvell.com (Postfix) with ESMTP id A7AFB3F703F; Thu, 10 Sep 2020 03:09:34 -0700 (PDT) From: Nithin Dabilpuram To: , , , , , , , , , , , Ray Kinsella , John McNamara , Marko Kovacevic CC: , , Nithin Dabilpuram Date: Thu, 10 Sep 2020 15:39:29 +0530 Message-ID: <20200910100929.25759-1-ndabilpuram@marvell.com> X-Mailer: git-send-email 2.8.4 In-Reply-To: <20200909172200.30610-1-ndabilpuram@marvell.com> References: <20200909172200.30610-1-ndabilpuram@marvell.com> MIME-Version: 1.0 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.235, 18.0.687 definitions=2020-09-10_01:2020-09-10, 2020-09-10 signatures=0 Subject: [dpdk-dev] [PATCH v3] ethdev: mark all traffic manager API as experimental 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" 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 dae4dbf..cd6b2c8 100644 --- a/doc/guides/rel_notes/deprecation.rst +++ b/doc/guides/rel_notes/deprecation.rst @@ -237,13 +237,6 @@ Deprecation Notices following the IPv6 header, as proposed in RFC https://mails.dpdk.org/archives/dev/2020-August/177257.html. -* 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 1212a17..3da4512 100644 --- a/lib/librte_ethdev/rte_ethdev_version.map +++ b/lib/librte_ethdev/rte_ethdev_version.map @@ -135,36 +135,6 @@ DPDK_20.0 { 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: *; }; @@ -241,6 +211,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 f9c0cf3..c80c0bc 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,