Lines Matching refs:head

32 	u32 head;
41 head = RDMA_READ_UAPI_ATOMIC(u_wc->head);
46 head = k_wc->head;
51 * Note that the head pointer might be writable by
54 if (head >= (unsigned)cq->ibcq.cqe) {
55 head = cq->ibcq.cqe;
58 next = head + 1;
78 trace_rvt_cq_enter(cq, entry, head);
80 uqueue[head].wr_id = entry->wr_id;
81 uqueue[head].status = entry->status;
82 uqueue[head].opcode = entry->opcode;
83 uqueue[head].vendor_err = entry->vendor_err;
84 uqueue[head].byte_len = entry->byte_len;
85 uqueue[head].ex.imm_data = entry->ex.imm_data;
86 uqueue[head].qp_num = entry->qp->qp_num;
87 uqueue[head].src_qp = entry->src_qp;
88 uqueue[head].wc_flags = entry->wc_flags;
89 uqueue[head].pkey_index = entry->pkey_index;
90 uqueue[head].slid = ib_lid_cpu16(entry->slid);
91 uqueue[head].sl = entry->sl;
92 uqueue[head].dlid_path_bits = entry->dlid_path_bits;
93 uqueue[head].port_num = entry->port_num;
94 /* Make sure entry is written before the head index. */
95 RDMA_WRITE_UAPI_ATOMIC(u_wc->head, next);
97 kqueue[head] = *entry;
98 k_wc->head = next;
183 * Allocate the completion queue entries and head/tail pointers.
318 if (RDMA_READ_UAPI_ATOMIC(cq->queue->head) !=
322 if (cq->kqueue->head != cq->kqueue->tail)
341 u32 head, tail, n;
380 * Make sure head and tail are sane since they
385 head = RDMA_READ_UAPI_ATOMIC(old_u_wc->head);
389 head = old_k_wc->head;
393 if (head > (u32)cq->ibcq.cqe)
394 head = (u32)cq->ibcq.cqe;
397 if (head < tail)
398 n = cq->ibcq.cqe + 1 + head - tail;
400 n = head - tail;
405 for (n = 0; tail != head; n++) {
417 RDMA_WRITE_UAPI_ATOMIC(u_wc->head, n);
421 k_wc->head = n;
495 if (tail == wc->head)