net: hns3: remove always exist devlink pointer check

The devlink pointer always exists after hclge_devlink_init() succeed.
Remove that check together with NULL setting after release and ensure
that devlink_register is last command prior to call to devlink_reload_enable().

Fixes: b741269b27 ("net: hns3: add support for registering devlink for PF")
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Leon Romanovsky 2021-08-14 12:57:31 +03:00 committed by David S. Miller
parent ed43fbac71
commit a1fcb106ae
2 changed files with 2 additions and 14 deletions

View File

@ -118,6 +118,7 @@ int hclge_devlink_init(struct hclge_dev *hdev)
priv = devlink_priv(devlink); priv = devlink_priv(devlink);
priv->hdev = hdev; priv->hdev = hdev;
hdev->devlink = devlink;
ret = devlink_register(devlink); ret = devlink_register(devlink);
if (ret) { if (ret) {
@ -126,8 +127,6 @@ int hclge_devlink_init(struct hclge_dev *hdev)
goto out_reg_fail; goto out_reg_fail;
} }
hdev->devlink = devlink;
devlink_reload_enable(devlink); devlink_reload_enable(devlink);
return 0; return 0;
@ -141,14 +140,9 @@ void hclge_devlink_uninit(struct hclge_dev *hdev)
{ {
struct devlink *devlink = hdev->devlink; struct devlink *devlink = hdev->devlink;
if (!devlink)
return;
devlink_reload_disable(devlink); devlink_reload_disable(devlink);
devlink_unregister(devlink); devlink_unregister(devlink);
devlink_free(devlink); devlink_free(devlink);
hdev->devlink = NULL;
} }

View File

@ -120,6 +120,7 @@ int hclgevf_devlink_init(struct hclgevf_dev *hdev)
priv = devlink_priv(devlink); priv = devlink_priv(devlink);
priv->hdev = hdev; priv->hdev = hdev;
hdev->devlink = devlink;
ret = devlink_register(devlink); ret = devlink_register(devlink);
if (ret) { if (ret) {
@ -128,8 +129,6 @@ int hclgevf_devlink_init(struct hclgevf_dev *hdev)
goto out_reg_fail; goto out_reg_fail;
} }
hdev->devlink = devlink;
devlink_reload_enable(devlink); devlink_reload_enable(devlink);
return 0; return 0;
@ -143,14 +142,9 @@ void hclgevf_devlink_uninit(struct hclgevf_dev *hdev)
{ {
struct devlink *devlink = hdev->devlink; struct devlink *devlink = hdev->devlink;
if (!devlink)
return;
devlink_reload_disable(devlink); devlink_reload_disable(devlink);
devlink_unregister(devlink); devlink_unregister(devlink);
devlink_free(devlink); devlink_free(devlink);
hdev->devlink = NULL;
} }