Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 57afead5 authored by Achiad Shochat's avatar Achiad Shochat Committed by David S. Miller
Browse files

net/mlx5e: Have a single RSS Toeplitz hash key



No need to generate a unique key per TIR.
Generating a single key per netdev and copying it to all
its TIRs.

Signed-off-by: default avatarAchiad Shochat <achiad@mellanox.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 0aa65cc0
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -273,6 +273,7 @@ struct mlx5e_params {
	u32 lro_wqe_sz;
	u32 lro_wqe_sz;
	u8  rss_hfunc;
	u8  rss_hfunc;
	u16 tx_max_inline;
	u16 tx_max_inline;
	u8 toeplitz_hash_key[40];
};
};


enum {
enum {
+4 −1
Original line number Original line Diff line number Diff line
@@ -1611,7 +1611,7 @@ static void mlx5e_build_tir_ctx(struct mlx5e_priv *priv, u32 *tirc, int tt)
						       rx_hash_toeplitz_key);
						       rx_hash_toeplitz_key);


			MLX5_SET(tirc, tirc, rx_hash_symmetric, 1);
			MLX5_SET(tirc, tirc, rx_hash_symmetric, 1);
			netdev_rss_key_fill(rss_key, len);
			memcpy(rss_key, priv->params.toeplitz_hash_key, len);
		}
		}
		break;
		break;
	}
	}
@@ -1939,6 +1939,9 @@ static void mlx5e_build_netdev_priv(struct mlx5_core_dev *mdev,
	priv->params.default_vlan_prio     = 0;
	priv->params.default_vlan_prio     = 0;
	priv->params.rss_hfunc             = ETH_RSS_HASH_XOR;
	priv->params.rss_hfunc             = ETH_RSS_HASH_XOR;


	netdev_rss_key_fill(priv->params.toeplitz_hash_key,
			    sizeof(priv->params.toeplitz_hash_key));

	priv->params.lro_en = false && !!MLX5_CAP_ETH(priv->mdev, lro_cap);
	priv->params.lro_en = false && !!MLX5_CAP_ETH(priv->mdev, lro_cap);
	priv->params.lro_wqe_sz            =
	priv->params.lro_wqe_sz            =
		MLX5E_PARAMS_DEFAULT_LRO_WQE_SZ;
		MLX5E_PARAMS_DEFAULT_LRO_WQE_SZ;