mirror of https://gitee.com/openkylin/linux.git
net/mlx5: Move devlink registration before interfaces load
Register devlink before interfaces are added.
This will allow interfaces to use devlink while initalizing. For example,
call mlx5_is_roce_enabled.
Fixes: aba25279c1
("net/mlx5e: Add TX reporter support")
Signed-off-by: Michael Guralnik <michaelgur@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
This commit is contained in:
parent
99cda45426
commit
a6f3b62386
|
@ -1193,6 +1193,12 @@ int mlx5_load_one(struct mlx5_core_dev *dev, bool boot)
|
|||
if (err)
|
||||
goto err_load;
|
||||
|
||||
if (boot) {
|
||||
err = mlx5_devlink_register(priv_to_devlink(dev), dev->device);
|
||||
if (err)
|
||||
goto err_devlink_reg;
|
||||
}
|
||||
|
||||
if (mlx5_device_registered(dev)) {
|
||||
mlx5_attach_device(dev);
|
||||
} else {
|
||||
|
@ -1210,6 +1216,9 @@ int mlx5_load_one(struct mlx5_core_dev *dev, bool boot)
|
|||
return err;
|
||||
|
||||
err_reg_dev:
|
||||
if (boot)
|
||||
mlx5_devlink_unregister(priv_to_devlink(dev));
|
||||
err_devlink_reg:
|
||||
mlx5_unload(dev);
|
||||
err_load:
|
||||
if (boot)
|
||||
|
@ -1347,10 +1356,6 @@ static int init_one(struct pci_dev *pdev, const struct pci_device_id *id)
|
|||
|
||||
request_module_nowait(MLX5_IB_MOD);
|
||||
|
||||
err = mlx5_devlink_register(devlink, &pdev->dev);
|
||||
if (err)
|
||||
goto clean_load;
|
||||
|
||||
err = mlx5_crdump_enable(dev);
|
||||
if (err)
|
||||
dev_err(&pdev->dev, "mlx5_crdump_enable failed with error code %d\n", err);
|
||||
|
@ -1358,9 +1363,6 @@ static int init_one(struct pci_dev *pdev, const struct pci_device_id *id)
|
|||
pci_save_state(pdev);
|
||||
return 0;
|
||||
|
||||
clean_load:
|
||||
mlx5_unload_one(dev, true);
|
||||
|
||||
err_load_one:
|
||||
mlx5_pci_close(dev);
|
||||
pci_init_err:
|
||||
|
|
Loading…
Reference in New Issue