|
@@ -235,6 +235,8 @@ static int set_rq_size(struct mlx5_ib_dev *dev, struct ib_qp_cap *cap,
|
|
|
qp->rq.max_gs = 0;
|
|
|
qp->rq.wqe_cnt = 0;
|
|
|
qp->rq.wqe_shift = 0;
|
|
|
+ cap->max_recv_wr = 0;
|
|
|
+ cap->max_recv_sge = 0;
|
|
|
} else {
|
|
|
if (ucmd) {
|
|
|
qp->rq.wqe_cnt = ucmd->rq_wqe_count;
|
|
@@ -4079,17 +4081,19 @@ int mlx5_ib_query_qp(struct ib_qp *ibqp, struct ib_qp_attr *qp_attr,
|
|
|
qp_attr->cap.max_recv_sge = qp->rq.max_gs;
|
|
|
|
|
|
if (!ibqp->uobject) {
|
|
|
- qp_attr->cap.max_send_wr = qp->sq.wqe_cnt;
|
|
|
+ qp_attr->cap.max_send_wr = qp->sq.max_post;
|
|
|
qp_attr->cap.max_send_sge = qp->sq.max_gs;
|
|
|
+ qp_init_attr->qp_context = ibqp->qp_context;
|
|
|
} else {
|
|
|
qp_attr->cap.max_send_wr = 0;
|
|
|
qp_attr->cap.max_send_sge = 0;
|
|
|
}
|
|
|
|
|
|
- /* We don't support inline sends for kernel QPs (yet), and we
|
|
|
- * don't know what userspace's value should be.
|
|
|
- */
|
|
|
- qp_attr->cap.max_inline_data = 0;
|
|
|
+ qp_init_attr->qp_type = ibqp->qp_type;
|
|
|
+ qp_init_attr->recv_cq = ibqp->recv_cq;
|
|
|
+ qp_init_attr->send_cq = ibqp->send_cq;
|
|
|
+ qp_init_attr->srq = ibqp->srq;
|
|
|
+ qp_attr->cap.max_inline_data = qp->max_inline_data;
|
|
|
|
|
|
qp_init_attr->cap = qp_attr->cap;
|
|
|
|