net/mlx5: Disable devlink reload for multi port slave device
authorShay Drory <shayd@nvidia.com>
Wed, 30 Dec 2020 07:58:32 +0000 (09:58 +0200)
committerSaeed Mahameed <saeedm@nvidia.com>
Fri, 12 Feb 2021 02:50:14 +0000 (18:50 -0800)
Devlink reload can't be allowed on a multi port slave device, because
reload of slave device doesn't take effect.

The right flow is to disable devlink reload for multi port slave
device. Hence, disabling it in mlx5_core probing.

Fixes: 4383cfcc65e7 ("net/mlx5: Add devlink reload")
Signed-off-by: Shay Drory <shayd@nvidia.com>
Reviewed-by: Moshe Shemesh <moshe@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
drivers/net/ethernet/mellanox/mlx5/core/main.c

index ca6f2fc..ba1a4ae 100644 (file)
@@ -1396,7 +1396,8 @@ static int init_one(struct pci_dev *pdev, const struct pci_device_id *id)
                dev_err(&pdev->dev, "mlx5_crdump_enable failed with error code %d\n", err);
 
        pci_save_state(pdev);
-       devlink_reload_enable(devlink);
+       if (!mlx5_core_is_mp_slave(dev))
+               devlink_reload_enable(devlink);
        return 0;
 
 err_load_one: