Lines Matching refs:qpn
123 u32 i, offset, max_scan, qpn;
145 qpn = qpt->last + 1;
146 if (qpn >= QPN_MAX)
147 qpn = 2;
148 if (qpt->mask && ((qpn & qpt->mask) >> 1) != r)
149 qpn = ((qpn & qpt->mask) ? (qpn | qpt->mask) + 1 : qpn) |
151 offset = qpn & BITS_PER_PAGE_MASK;
152 map = &qpt->map[qpn / BITS_PER_PAGE];
162 qpt->last = qpn;
163 ret = qpn;
167 qpn = mk_qpn(qpt, map, offset);
176 } while (offset < BITS_PER_PAGE && qpn < QPN_MAX);
194 qpn = mk_qpn(qpt, map, offset);
203 static void free_qpn(struct qib_qpn_table *qpt, u32 qpn)
207 map = qpt->map + qpn / BITS_PER_PAGE;
209 clear_bit(qpn & BITS_PER_PAGE_MASK, map->page);
310 * @qpn: the QP number to look up
315 struct qib_qp *qib_lookup_qpn(struct qib_ibport *ibp, u32 qpn)
323 if (qpn == 0)
325 else if (qpn == 1)
328 for (qp = dev->qp_table[qpn % dev->qp_table_size]; qp;
330 if (qp->ibqp.qp_num == qpn)