From mboxrd@z Thu Jan 1 00:00:00 1970 From: Huazhong Tan Subject: [Patch V4 net 05/11] net: hns3: remove unnecessary queue reset in the hns3_uninit_all_ring() Date: Mon, 29 Oct 2018 21:54:15 +0800 Message-ID: <1540821261-55002-6-git-send-email-tanhuazhong@huawei.com> References: <1540821261-55002-1-git-send-email-tanhuazhong@huawei.com> Mime-Version: 1.0 Content-Type: text/plain Cc: , , , , , To: , Return-path: Received: from szxga05-in.huawei.com ([45.249.212.191]:14151 "EHLO huawei.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726135AbeJ2WnR (ORCPT ); Mon, 29 Oct 2018 18:43:17 -0400 In-Reply-To: <1540821261-55002-1-git-send-email-tanhuazhong@huawei.com> Sender: netdev-owner@vger.kernel.org List-ID: It is not necessary to reset the queue in the hns3_uninit_all_ring(), since the queue is stopped in the down operation, and will be reset in the up operation. And the judgment of the HCLGE_STATE_RST_HANDLING flag in the hclge_reset_tqp() is not correct, because we need to reset tqp during pf reset, otherwise it may cause queue not being reset to working state problem. Fixes: 76ad4f0ee747 ("net: hns3: Add support of HNS3 Ethernet Driver for hip08 SoC") Signed-off-by: Huazhong Tan --- V4: Fixes comments from Sergei Shtylyov V3: Fixes comments from Sergei Shtylyov --- drivers/net/ethernet/hisilicon/hns3/hns3_enet.c | 3 --- drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c | 3 --- 2 files changed, 6 deletions(-) diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c b/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c index 6f0fd62..a80ecfb 100644 --- a/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c +++ b/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c @@ -3240,9 +3240,6 @@ int hns3_uninit_all_ring(struct hns3_nic_priv *priv) int i; for (i = 0; i < h->kinfo.num_tqps; i++) { - if (h->ae_algo->ops->reset_queue) - h->ae_algo->ops->reset_queue(h, i); - hns3_fini_ring(priv->ring_data[i].ring); hns3_fini_ring(priv->ring_data[i + h->kinfo.num_tqps].ring); } diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c index 2a63147..4dd0506 100644 --- a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c +++ b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c @@ -6116,9 +6116,6 @@ void hclge_reset_tqp(struct hnae3_handle *handle, u16 queue_id) u16 queue_gid; int ret; - if (test_bit(HCLGE_STATE_RST_HANDLING, &hdev->state)) - return; - queue_gid = hclge_covert_handle_qid_global(handle, queue_id); ret = hclge_tqp_enable(hdev, queue_id, 0, false); -- 2.7.4