RDMA/uverbs: Don't set rcq for a QP if qp_type is IB_QPT_XRC_INI
An INI QP doesn't require receive CQ, the creation flow sets the recv counts
to zero:
if (cmd->qp_type == IB_QPT_XRC_INI) {
cmd->max_recv_wr = 0;
cmd->max_recv_sge = 0;
The new IOCTL path also does not set the rcq, so make things the same.
Link: https://lore.kernel.org/r/20201216071755.149449-1-yangx.jy@cn.fujitsu.com
Signed-off-by: Xiao Yang <yangx.jy@cn.fujitsu.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
This commit is contained in:
committed by
Jason Gunthorpe
parent
90da7dc820
commit
efeb973ffc
@@ -1382,7 +1382,7 @@ static int create_qp(struct uverbs_attr_bundle *attrs,
|
|||||||
if (has_sq)
|
if (has_sq)
|
||||||
scq = uobj_get_obj_read(cq, UVERBS_OBJECT_CQ,
|
scq = uobj_get_obj_read(cq, UVERBS_OBJECT_CQ,
|
||||||
cmd->send_cq_handle, attrs);
|
cmd->send_cq_handle, attrs);
|
||||||
if (!ind_tbl)
|
if (!ind_tbl && cmd->qp_type != IB_QPT_XRC_INI)
|
||||||
rcq = rcq ?: scq;
|
rcq = rcq ?: scq;
|
||||||
pd = uobj_get_obj_read(pd, UVERBS_OBJECT_PD, cmd->pd_handle,
|
pd = uobj_get_obj_read(pd, UVERBS_OBJECT_PD, cmd->pd_handle,
|
||||||
attrs);
|
attrs);
|
||||||
|
|||||||
Reference in New Issue
Block a user