net/mlx5: Update log_max_qp value to be 17 at most
commit7f839965b2
upstream. Currently, log_max_qp value is dependent on what FW reports as its max capability. In reality, due to a bug, some FWs report a value greater than 17, even though they don't support log_max_qp > 17. This FW issue led the driver to exhaust memory on startup. Thus, log_max_qp value is set to be no more than 17 regardless of what FW reports, as it was before the cited commit. Fixes:f79a609ea6
("net/mlx5: Update log_max_qp value to FW max capability") Signed-off-by: Maher Sanalla <msanalla@nvidia.com> Reviewed-by: Avihai Horon <avihaih@nvidia.com> Signed-off-by: Saeed Mahameed <saeedm@nvidia.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
6e94d28633
commit
2378f94c8d
@ -516,7 +516,7 @@ static int handle_hca_cap(struct mlx5_core_dev *dev, void *set_ctx)
|
|||||||
|
|
||||||
/* Check log_max_qp from HCA caps to set in current profile */
|
/* Check log_max_qp from HCA caps to set in current profile */
|
||||||
if (prof->log_max_qp == LOG_MAX_SUPPORTED_QPS) {
|
if (prof->log_max_qp == LOG_MAX_SUPPORTED_QPS) {
|
||||||
prof->log_max_qp = MLX5_CAP_GEN_MAX(dev, log_max_qp);
|
prof->log_max_qp = min_t(u8, 17, MLX5_CAP_GEN_MAX(dev, log_max_qp));
|
||||||
} else if (MLX5_CAP_GEN_MAX(dev, log_max_qp) < prof->log_max_qp) {
|
} else if (MLX5_CAP_GEN_MAX(dev, log_max_qp) < prof->log_max_qp) {
|
||||||
mlx5_core_warn(dev, "log_max_qp value in current profile is %d, changing it to HCA capability limit (%d)\n",
|
mlx5_core_warn(dev, "log_max_qp value in current profile is %d, changing it to HCA capability limit (%d)\n",
|
||||||
prof->log_max_qp,
|
prof->log_max_qp,
|
||||||
|
Reference in New Issue
Block a user