| From f6f4a16f8f7b2fe97568fdff5271d39f33cc3dfb Mon Sep 17 00:00:00 2001 |
| From: Huazhong Tan <tanhuazhong@huawei.com> |
| Date: Thu, 25 Apr 2019 20:42:52 +0800 |
| Subject: net: hns3: fix pause configure fail problem |
| |
| [ Upstream commit fba2efdae8b4f998f66a2ff4c9f0575e1c4bbc40 ] |
| |
| When configure pause, current implementation returns directly |
| after setup PFC without setup BP, which is not sufficient. |
| |
| So this patch fixes it, only return while setting PFC failed. |
| |
| Fixes: 44e59e375bf7 ("net: hns3: do not return GE PFC setting err when initializing") |
| Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> |
| Signed-off-by: Peng Li <lipeng321@huawei.com> |
| Signed-off-by: David S. Miller <davem@davemloft.net> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_tm.c | 5 ++++- |
| 1 file changed, 4 insertions(+), 1 deletion(-) |
| |
| diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_tm.c b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_tm.c |
| index aafc69f4bfdd6..a7bbb6d3091a6 100644 |
| --- a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_tm.c |
| +++ b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_tm.c |
| @@ -1331,8 +1331,11 @@ int hclge_pause_setup_hw(struct hclge_dev *hdev, bool init) |
| ret = hclge_pfc_setup_hw(hdev); |
| if (init && ret == -EOPNOTSUPP) |
| dev_warn(&hdev->pdev->dev, "GE MAC does not support pfc\n"); |
| - else |
| + else if (ret) { |
| + dev_err(&hdev->pdev->dev, "config pfc failed! ret = %d\n", |
| + ret); |
| return ret; |
| + } |
| |
| return hclge_tm_bp_setup(hdev); |
| } |
| -- |
| 2.20.1 |
| |