Lines Matching refs:rq
54 srq->rq.size = srq_init_attr->attr.max_wr + 1;
55 srq->rq.max_sge = srq_init_attr->attr.max_sge;
56 sz = sizeof(struct ib_sge) * srq->rq.max_sge +
58 if (rvt_alloc_rq(&srq->rq, srq->rq.size * sz,
69 u32 s = sizeof(struct rvt_rwq) + srq->rq.size * sz;
71 srq->ip = rvt_create_mmap_info(dev, s, udata, srq->rq.wq);
86 spin_lock_init(&srq->rq.lock);
110 rvt_free_rq(&srq->rq);
145 srq->rq.max_sge * sizeof(struct ib_sge);
167 spin_lock_irq(&srq->rq.kwq->c_lock);
173 owq = srq->rq.wq;
177 okwq = srq->rq.kwq;
181 if (head >= srq->rq.size || tail >= srq->rq.size) {
187 n += srq->rq.size - tail;
200 wqe = rvt_get_rwqe_ptr(&srq->rq, tail);
207 if (++tail >= srq->rq.size)
210 srq->rq.kwq = tmp_rq.kwq;
212 srq->rq.wq = tmp_rq.wq;
219 srq->rq.size = size;
222 spin_unlock_irq(&srq->rq.kwq->c_lock);
256 spin_lock_irq(&srq->rq.kwq->c_lock);
257 if (attr->srq_limit >= srq->rq.size)
261 spin_unlock_irq(&srq->rq.kwq->c_lock);
266 spin_unlock_irq(&srq->rq.kwq->c_lock);
283 attr->max_wr = srq->rq.size - 1;
284 attr->max_sge = srq->rq.max_sge;
304 kvfree(srq->rq.kwq);