Commit b6872fd3 authored by Yunsheng Lin's avatar Yunsheng Lin Committed by David S. Miller

net: hns3: minior error handling change for hclge_tm_schd_info_init

When hclge_tm_schd_info_update calls hclge_tm_schd_info_init to
initialize the schedule info, hdev->tm_info.num_pg and
hdev->tx_sch_mode is not changed, which makes the checking in
hclge_tm_schd_info_init unnecessary.

So this patch moves the hdev->tm_info.num_pg and hdev->tx_sch_mode
checking into hclge_tm_schd_init and changes the return type of
hclge_tm_schd_info_init from int to void.
Signed-off-by: default avatarYunsheng Lin <linyunsheng@huawei.com>
Reviewed-by: default avatarPeng Li <lipeng321@huawei.com>
Signed-off-by: default avatarHuazhong Tan <tanhuazhong@huawei.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent a4ee7624
...@@ -650,12 +650,8 @@ static void hclge_pfc_info_init(struct hclge_dev *hdev) ...@@ -650,12 +650,8 @@ static void hclge_pfc_info_init(struct hclge_dev *hdev)
} }
} }
static int hclge_tm_schd_info_init(struct hclge_dev *hdev) static void hclge_tm_schd_info_init(struct hclge_dev *hdev)
{ {
if ((hdev->tx_sch_mode != HCLGE_FLAG_TC_BASE_SCH_MODE) &&
(hdev->tm_info.num_pg != 1))
return -EINVAL;
hclge_tm_pg_info_init(hdev); hclge_tm_pg_info_init(hdev);
hclge_tm_tc_info_init(hdev); hclge_tm_tc_info_init(hdev);
...@@ -663,8 +659,6 @@ static int hclge_tm_schd_info_init(struct hclge_dev *hdev) ...@@ -663,8 +659,6 @@ static int hclge_tm_schd_info_init(struct hclge_dev *hdev)
hclge_tm_vport_info_update(hdev); hclge_tm_vport_info_update(hdev);
hclge_pfc_info_init(hdev); hclge_pfc_info_init(hdev);
return 0;
} }
static int hclge_tm_pg_to_pri_map(struct hclge_dev *hdev) static int hclge_tm_pg_to_pri_map(struct hclge_dev *hdev)
...@@ -1428,15 +1422,15 @@ int hclge_tm_init_hw(struct hclge_dev *hdev, bool init) ...@@ -1428,15 +1422,15 @@ int hclge_tm_init_hw(struct hclge_dev *hdev, bool init)
int hclge_tm_schd_init(struct hclge_dev *hdev) int hclge_tm_schd_init(struct hclge_dev *hdev)
{ {
int ret;
/* fc_mode is HCLGE_FC_FULL on reset */ /* fc_mode is HCLGE_FC_FULL on reset */
hdev->tm_info.fc_mode = HCLGE_FC_FULL; hdev->tm_info.fc_mode = HCLGE_FC_FULL;
hdev->fc_mode_last_time = hdev->tm_info.fc_mode; hdev->fc_mode_last_time = hdev->tm_info.fc_mode;
ret = hclge_tm_schd_info_init(hdev); if (hdev->tx_sch_mode != HCLGE_FLAG_TC_BASE_SCH_MODE &&
if (ret) hdev->tm_info.num_pg != 1)
return ret; return -EINVAL;
hclge_tm_schd_info_init(hdev);
return hclge_tm_init_hw(hdev, true); return hclge_tm_init_hw(hdev, true);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment