From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) by dpdk.org (Postfix) with ESMTP id DF998239 for ; Tue, 21 Nov 2017 14:28:11 +0100 (CET) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id 947BC20CDE; Tue, 21 Nov 2017 08:28:11 -0500 (EST) Received: from frontend2 ([10.202.2.161]) by compute1.internal (MEProxy); Tue, 21 Nov 2017 08:28:11 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fridaylinux.org; h=cc:date:from:in-reply-to:message-id:references:subject:to :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; bh=KlVlzQa9JjouvAFxw 0EqFiKZ2KXaxiUX1fdSvtBG/ig=; b=ALrQQzVSfMCpkAdveO2bn5YYcn8/JG0Rl sIkP7B4WOxisZPsR34NkhuCJI2wiC4NzFYKhgl8GGV0rPORKjK3JdhUfOrTMoQsu VCJcZzXy5B3729HErO/D+PEpxj8bkkR3iv1KiitMT4ZSFUKA33cCUEUAXn4PmSm1 NK0oFDwy0HBx9UVC8wCmP9lSD2bCV5TO/F1imeFCcYUQhq6OWGU6TnnygwgYdOMq aWzadxbSZAVf9FEHvnESGeeDy3uegUGJx4IxCVlDgYsG0CYpCdpZin4hKEwbLsCA agwSQ4gSy5qQhuscqLDg6nGwnwopyM5rNE5DZS5igXfre+lYVEt8g== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:date:from:in-reply-to:message-id :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; bh=KlVlzQa9JjouvAFxw0EqFiKZ2KXaxiUX1fdSvtBG/ig=; b=MgFyicu4 1RkoVcDoGapi4UbweD+Gx68wgaY4orFtqkPWIv2FCpNtcPE5+EFHQTvD0TFm9py9 DwT0gi4qXha+r1xX++SydlId4czzN9bxea8pysg9XYI59AMNbEnrosdFvl4HAOwR YVzz+M5l9ld46dbyk6oGWBb+xxOteCgHQN1cXpDd04s48Tsh7jNUhIk2QyxW2E0s MBpo+d1Wjk9BCpbilrz7kyIulrcU5uXR7HR70AE9am3cqDKJU5eRxdW0Q1/Y1zsM 7y7gjmUfEFXBZg+XkQ1L6LxYpkwDjcA0UpP47YglAeRfUDDBCdGD/yKoIc3xHMgm 3+zaHcUlHLyanw== X-ME-Sender: Received: from localhost.localdomain (unknown [180.158.62.0]) by mail.messagingengine.com (Postfix) with ESMTPA id 22F8F247A9; Tue, 21 Nov 2017 08:28:08 -0500 (EST) From: Yuanhan Liu To: Wenzhuo Lu Cc: Cristian Dumitrescu , dpdk stable Date: Tue, 21 Nov 2017 21:18:01 +0800 Message-Id: <1511270333-31002-139-git-send-email-yliu@fridaylinux.org> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1511270333-31002-1-git-send-email-yliu@fridaylinux.org> References: <1511270333-31002-1-git-send-email-yliu@fridaylinux.org> Subject: [dpdk-stable] patch 'net/i40e: fix TM node parameter checking' has been queued to stable release 17.08.1 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Nov 2017 13:28:12 -0000 Hi, FYI, your patch has been queued to stable release 17.08.1 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 11/24/17. So please shout if anyone has objections. Thanks. --yliu --- >>From b9f2c910a224f12d9781ec7185b66707a7682454 Mon Sep 17 00:00:00 2001 From: Wenzhuo Lu Date: Tue, 17 Oct 2017 13:50:34 +0800 Subject: [PATCH] net/i40e: fix TM node parameter checking [ upstream commit 1be6985827ff4f189e827f19de5e26d4f5ca8a73 ] Only queue nodes should be taken as leaf nodes, all the other nodes are non-leaf nodes. Correct it when checking the parameters of the TM nodes. Fixes: 03a249b62bbd ("net/i40e: support adding TM node") Signed-off-by: Wenzhuo Lu Acked-by: Cristian Dumitrescu --- drivers/net/i40e/i40e_tm.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/drivers/net/i40e/i40e_tm.c b/drivers/net/i40e/i40e_tm.c index d90313a..fe99215 100644 --- a/drivers/net/i40e/i40e_tm.c +++ b/drivers/net/i40e/i40e_tm.c @@ -374,11 +374,13 @@ i40e_tm_node_search(struct rte_eth_dev *dev, } static int -i40e_node_param_check(uint32_t node_id, uint32_t parent_node_id, +i40e_node_param_check(struct rte_eth_dev *dev, uint32_t node_id, uint32_t priority, uint32_t weight, struct rte_tm_node_params *params, struct rte_tm_error *error) { + struct i40e_hw *hw = I40E_DEV_PRIVATE_TO_HW(dev->data->dev_private); + if (node_id == RTE_TM_NODE_ID_NULL) { error->type = RTE_TM_ERROR_TYPE_NODE_ID; error->message = "invalid node id"; @@ -409,8 +411,8 @@ i40e_node_param_check(uint32_t node_id, uint32_t parent_node_id, return -EINVAL; } - /* for root node */ - if (parent_node_id == RTE_TM_NODE_ID_NULL) { + /* for non-leaf node */ + if (node_id >= hw->func_caps.num_tx_qp) { if (params->nonleaf.wfq_weight_mode) { error->type = RTE_TM_ERROR_TYPE_NODE_PARAMS_WFQ_WEIGHT_MODE; @@ -433,7 +435,7 @@ i40e_node_param_check(uint32_t node_id, uint32_t parent_node_id, return 0; } - /* for TC or queue node */ + /* for leaf node */ if (params->leaf.cman) { error->type = RTE_TM_ERROR_TYPE_NODE_PARAMS_CMAN; error->message = "Congestion management not supported"; @@ -494,7 +496,7 @@ i40e_node_add(struct rte_eth_dev *dev, uint32_t node_id, return -EINVAL; } - ret = i40e_node_param_check(node_id, parent_node_id, priority, weight, + ret = i40e_node_param_check(dev, node_id, priority, weight, params, error); if (ret) return ret; -- 2.7.4