RDMA/hns: Don't overwrite supplied QP attributes

QP attributes that were supplied by IB/core already have all parameters
set when they are passed to the driver. The drivers are not supposed to
change anything in struct ib_qp_init_attr.

Fixes: 66d86e529d ("RDMA/hns: Add UD support for HIP09")
Link: https://lore.kernel.org/r/5987138875e8ade9aa339d4db6e1bd9694ed4591.1627040189.git.leonro@nvidia.com
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
This commit is contained in:
Leon Romanovsky 2021-07-23 14:39:44 +03:00 committed by Jason Gunthorpe
parent 4ffd3b800e
commit e66e49592b
1 changed files with 1 additions and 7 deletions

View File

@ -1171,14 +1171,8 @@ struct ib_qp *hns_roce_create_qp(struct ib_pd *pd,
if (!hr_qp) if (!hr_qp)
return ERR_PTR(-ENOMEM); return ERR_PTR(-ENOMEM);
if (init_attr->qp_type == IB_QPT_XRC_INI) if (init_attr->qp_type == IB_QPT_XRC_TGT)
init_attr->recv_cq = NULL;
if (init_attr->qp_type == IB_QPT_XRC_TGT) {
hr_qp->xrcdn = to_hr_xrcd(init_attr->xrcd)->xrcdn; hr_qp->xrcdn = to_hr_xrcd(init_attr->xrcd)->xrcdn;
init_attr->recv_cq = NULL;
init_attr->send_cq = NULL;
}
if (init_attr->qp_type == IB_QPT_GSI) { if (init_attr->qp_type == IB_QPT_GSI) {
hr_qp->port = init_attr->port_num - 1; hr_qp->port = init_attr->port_num - 1;