mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-07-08 15:33:47 +00:00
net: hns3: fix improper error handling for hns3_client_start
If hns3_client_start() failed in the hns3_client_init(),
register_dev() should be undo in its error handling.
Fixes: a6d818e31d
("net: hns3: Add vport alive state checking support")
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>
This commit is contained in:
parent
eb4c2ccbad
commit
186551284e
1 changed files with 3 additions and 1 deletions
|
@ -3656,7 +3656,7 @@ static int hns3_client_init(struct hnae3_handle *handle)
|
||||||
ret = hns3_client_start(handle);
|
ret = hns3_client_start(handle);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
dev_err(priv->dev, "hns3_client_start fail! ret=%d\n", ret);
|
dev_err(priv->dev, "hns3_client_start fail! ret=%d\n", ret);
|
||||||
goto out_reg_netdev_fail;
|
goto out_client_start;
|
||||||
}
|
}
|
||||||
|
|
||||||
hns3_dcbnl_setup(handle);
|
hns3_dcbnl_setup(handle);
|
||||||
|
@ -3670,6 +3670,8 @@ static int hns3_client_init(struct hnae3_handle *handle)
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
|
out_client_start:
|
||||||
|
unregister_netdev(netdev);
|
||||||
out_reg_netdev_fail:
|
out_reg_netdev_fail:
|
||||||
hns3_uninit_phy(netdev);
|
hns3_uninit_phy(netdev);
|
||||||
out_init_phy:
|
out_init_phy:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue