Просмотр исходного кода

net/mlx5e: Check ets capability before initializing ets settings

During the initial setup, the ets command is sent to firmware
without checking if the HCA supports ets. This causes the invalid
command error. Add the ets capiblity check before sending firmware
command to initialize ets settings.

Fixes: e207b7e99176 ("net/mlx5e: ConnectX-4 firmware support for DCBX")
Signed-off-by: Huy Nguyen <huyn@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Huy Nguyen 8 лет назад
Родитель
Сommit
4525a45bfa
1 измененных файлов с 3 добавлено и 0 удалено
  1. 3 0
      drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c

+ 3 - 0
drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c

@@ -723,6 +723,9 @@ static void mlx5e_ets_init(struct mlx5e_priv *priv)
 	int i;
 	int i;
 	struct ieee_ets ets;
 	struct ieee_ets ets;
 
 
+	if (!MLX5_CAP_GEN(priv->mdev, ets))
+		return;
+
 	memset(&ets, 0, sizeof(ets));
 	memset(&ets, 0, sizeof(ets));
 	ets.ets_cap = mlx5_max_tc(priv->mdev) + 1;
 	ets.ets_cap = mlx5_max_tc(priv->mdev) + 1;
 	for (i = 0; i < ets.ets_cap; i++) {
 	for (i = 0; i < ets.ets_cap; i++) {