net/mlx5e: Expose new function for TIS destroy loop
authorTariq Toukan <tariqt@mellanox.com>
Mon, 24 Jun 2019 09:03:02 +0000 (12:03 +0300)
committerSaeed Mahameed <saeedm@mellanox.com>
Wed, 28 Aug 2019 18:49:03 +0000 (11:49 -0700)
For better modularity and code sharing.
Function internal change to be introduced in the next patches.

Signed-off-by: Tariq Toukan <tariqt@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
drivers/net/ethernet/mellanox/mlx5/core/en.h
drivers/net/ethernet/mellanox/mlx5/core/en_main.c
drivers/net/ethernet/mellanox/mlx5/core/en_rep.c

index 4467927..491c281 100644 (file)
@@ -1107,6 +1107,7 @@ int mlx5e_create_tis(struct mlx5_core_dev *mdev, void *in, u32 *tisn);
 void mlx5e_destroy_tis(struct mlx5_core_dev *mdev, u32 tisn);
 
 int mlx5e_create_tises(struct mlx5e_priv *priv);
+void mlx5e_destroy_tises(struct mlx5e_priv *priv);
 int mlx5e_update_nic_rx(struct mlx5e_priv *priv);
 void mlx5e_update_carrier(struct mlx5e_priv *priv);
 int mlx5e_close(struct net_device *netdev);
index 8592b98..390e614 100644 (file)
@@ -3179,6 +3179,14 @@ void mlx5e_destroy_tis(struct mlx5_core_dev *mdev, u32 tisn)
        mlx5_core_destroy_tis(mdev, tisn);
 }
 
+void mlx5e_destroy_tises(struct mlx5e_priv *priv)
+{
+       int tc;
+
+       for (tc = 0; tc < priv->profile->max_tc; tc++)
+               mlx5e_destroy_tis(priv->mdev, priv->tisn[tc]);
+}
+
 int mlx5e_create_tises(struct mlx5e_priv *priv)
 {
        int err;
@@ -3208,10 +3216,7 @@ err_close_tises:
 
 static void mlx5e_cleanup_nic_tx(struct mlx5e_priv *priv)
 {
-       int tc;
-
-       for (tc = 0; tc < priv->profile->max_tc; tc++)
-               mlx5e_destroy_tis(priv->mdev, priv->tisn[tc]);
+       mlx5e_destroy_tises(priv);
 }
 
 static void mlx5e_build_indir_tir_ctx_common(struct mlx5e_priv *priv,
index e7ac623..1623cd3 100644 (file)
@@ -1621,7 +1621,7 @@ static int mlx5e_init_rep_tx(struct mlx5e_priv *priv)
 {
        struct mlx5e_rep_priv *rpriv = priv->ppriv;
        struct mlx5_rep_uplink_priv *uplink_priv;
-       int tc, err;
+       int err;
 
        err = mlx5e_create_tises(priv);
        if (err) {
@@ -1657,18 +1657,15 @@ static int mlx5e_init_rep_tx(struct mlx5e_priv *priv)
 tc_esw_cleanup:
        mlx5e_tc_esw_cleanup(&uplink_priv->tc_ht);
 destroy_tises:
-       for (tc = 0; tc < priv->profile->max_tc; tc++)
-               mlx5e_destroy_tis(priv->mdev, priv->tisn[tc]);
+       mlx5e_destroy_tises(priv);
        return err;
 }
 
 static void mlx5e_cleanup_rep_tx(struct mlx5e_priv *priv)
 {
        struct mlx5e_rep_priv *rpriv = priv->ppriv;
-       int tc;
 
-       for (tc = 0; tc < priv->profile->max_tc; tc++)
-               mlx5e_destroy_tis(priv->mdev, priv->tisn[tc]);
+       mlx5e_destroy_tises(priv);
 
        if (rpriv->rep->vport == MLX5_VPORT_UPLINK) {
                /* clean indirect TC block notifications */