net/mlx5: Split the activate lag function into two routines
authorRoi Dayan <roid@mellanox.com>
Thu, 13 Dec 2018 03:11:39 +0000 (19:11 -0800)
committerSaeed Mahameed <saeedm@mellanox.com>
Fri, 14 Dec 2018 17:58:57 +0000 (09:58 -0800)
Split the activate lag function in order to be symmetric with
the deactivate lag function.

Signed-off-by: Roi Dayan <roid@mellanox.com>
Signed-off-by: Shahar Klein <shahark@mellanox.com>
Reviewed-by: Aviv Heller <avivh@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
drivers/net/ethernet/mellanox/mlx5/core/lag.c

index 582b2f1..75f7c8e 100644 (file)
@@ -186,14 +186,12 @@ static void mlx5_infer_tx_affinity_mapping(struct lag_tracker *tracker,
                *port2 = 1;
 }
 
-static void mlx5_activate_lag(struct mlx5_lag *ldev,
-                             struct lag_tracker *tracker)
+static int mlx5_create_lag(struct mlx5_lag *ldev,
+                          struct lag_tracker *tracker)
 {
        struct mlx5_core_dev *dev0 = ldev->pf[0].dev;
        int err;
 
-       ldev->flags |= MLX5_LAG_FLAG_BONDED;
-
        mlx5_infer_tx_affinity_mapping(tracker, &ldev->v2p_map[0],
                                       &ldev->v2p_map[1]);
 
@@ -202,6 +200,14 @@ static void mlx5_activate_lag(struct mlx5_lag *ldev,
                mlx5_core_err(dev0,
                              "Failed to create LAG (%d)\n",
                              err);
+       return err;
+}
+
+static void mlx5_activate_lag(struct mlx5_lag *ldev,
+                             struct lag_tracker *tracker)
+{
+       ldev->flags |= MLX5_LAG_FLAG_BONDED;
+       mlx5_create_lag(ldev, tracker);
 }
 
 static void mlx5_deactivate_lag(struct mlx5_lag *ldev)