Skip to content

Commit 92cd667

Browse files
Leon Romanovskyjgunthorpe
authored andcommitted
RDMA/mlx5: Don't rely on FW to set zeros in ECE response
The FW returns zeros in case feature is not enabled, but it is better to have the capability check and ensure that returned result is cleared. Fixes: 3e09a42 ("RDMA/mlx5: Get ECE options from FW during create QP") Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Leon Romanovsky <[email protected]> Signed-off-by: Jason Gunthorpe <[email protected]>
1 parent 6512f11 commit 92cd667

File tree

1 file changed

+4
-2
lines changed
  • drivers/infiniband/hw/mlx5

1 file changed

+4
-2
lines changed

drivers/infiniband/hw/mlx5/qp.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1906,7 +1906,8 @@ static int create_xrc_tgt_qp(struct mlx5_ib_dev *dev, struct mlx5_ib_qp *qp,
19061906

19071907
base->container_mibqp = qp;
19081908
base->mqp.event = mlx5_ib_qp_event;
1909-
params->resp.ece_options = MLX5_GET(create_qp_out, out, ece);
1909+
if (MLX5_CAP_GEN(mdev, ece_support))
1910+
params->resp.ece_options = MLX5_GET(create_qp_out, out, ece);
19101911

19111912
spin_lock_irqsave(&dev->reset_flow_resource_lock, flags);
19121913
list_add_tail(&qp->qps_list, &dev->qp_list);
@@ -2082,7 +2083,8 @@ static int create_user_qp(struct mlx5_ib_dev *dev, struct ib_pd *pd,
20822083

20832084
base->container_mibqp = qp;
20842085
base->mqp.event = mlx5_ib_qp_event;
2085-
params->resp.ece_options = MLX5_GET(create_qp_out, out, ece);
2086+
if (MLX5_CAP_GEN(mdev, ece_support))
2087+
params->resp.ece_options = MLX5_GET(create_qp_out, out, ece);
20862088

20872089
get_cqs(qp->type, init_attr->send_cq, init_attr->recv_cq,
20882090
&send_cq, &recv_cq);

0 commit comments

Comments
 (0)