Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 7 Oct 2019 08:40:34 +0000 (UTC)
From:      Hans Petter Selasky <hselasky@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org
Subject:   svn commit: r353189 - stable/11/sys/dev/mlx5/mlx5_core
Message-ID:  <201910070840.x978eYZb054652@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: hselasky
Date: Mon Oct  7 08:40:34 2019
New Revision: 353189
URL: https://svnweb.freebsd.org/changeset/base/353189

Log:
  MFC r352958:
  Make sure the number of IRQ vectors doesn't exceed 256 in mlx5core.
  The "intr" field in "struct mlx5_ifc_eqc_bits" is only 8 bits wide.
  
  Sponsored by:	Mellanox Technologies

Modified:
  stable/11/sys/dev/mlx5/mlx5_core/mlx5_main.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/dev/mlx5/mlx5_core/mlx5_main.c
==============================================================================
--- stable/11/sys/dev/mlx5/mlx5_core/mlx5_main.c	Mon Oct  7 08:39:55 2019	(r353188)
+++ stable/11/sys/dev/mlx5/mlx5_core/mlx5_main.c	Mon Oct  7 08:40:34 2019	(r353189)
@@ -275,7 +275,10 @@ static int mlx5_enable_msix(struct mlx5_core_dev *dev)
 	else
 		nvec += MLX5_CAP_GEN(dev, num_ports) * num_online_cpus();
 
-	nvec = min_t(int, nvec, num_eqs);
+	if (nvec > num_eqs)
+		nvec = num_eqs;
+	if (nvec > 256)
+		nvec = 256;	/* limit of firmware API */
 	if (nvec <= MLX5_EQ_VEC_COMP_BASE)
 		return -ENOMEM;
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201910070840.x978eYZb054652>