Lines Matching refs:length

169 void qib_copy_sge(struct qib_sge_state *ss, void *data, u32 length, int release)  in qib_copy_sge()  argument
173 while (length) { in qib_copy_sge()
174 u32 len = sge->length; in qib_copy_sge()
176 if (len > length) in qib_copy_sge()
177 len = length; in qib_copy_sge()
183 sge->length -= len; in qib_copy_sge()
190 } else if (sge->length == 0 && sge->mr->lkey) { in qib_copy_sge()
198 sge->length = in qib_copy_sge()
199 sge->mr->map[sge->m]->segs[sge->n].length; in qib_copy_sge()
202 length -= len; in qib_copy_sge()
211 void qib_skip_sge(struct qib_sge_state *ss, u32 length, int release) in qib_skip_sge() argument
215 while (length) { in qib_skip_sge()
216 u32 len = sge->length; in qib_skip_sge()
218 if (len > length) in qib_skip_sge()
219 len = length; in qib_skip_sge()
224 sge->length -= len; in qib_skip_sge()
231 } else if (sge->length == 0 && sge->mr->lkey) { in qib_skip_sge()
239 sge->length = in qib_skip_sge()
240 sge->mr->map[sge->m]->segs[sge->n].length; in qib_skip_sge()
242 length -= len; in qib_skip_sge()
251 static u32 qib_count_sge(struct qib_sge_state *ss, u32 length) in qib_count_sge() argument
258 while (length) { in qib_count_sge()
259 u32 len = sge.length; in qib_count_sge()
261 if (len > length) in qib_count_sge()
262 len = length; in qib_count_sge()
267 (len != length && (len & (sizeof(u32) - 1)))) { in qib_count_sge()
273 sge.length -= len; in qib_count_sge()
278 } else if (sge.length == 0 && sge.mr->lkey) { in qib_count_sge()
286 sge.length = in qib_count_sge()
287 sge.mr->map[sge.m]->segs[sge.n].length; in qib_count_sge()
289 length -= len; in qib_count_sge()
297 static void qib_copy_from_sge(void *data, struct qib_sge_state *ss, u32 length) in qib_copy_from_sge() argument
301 while (length) { in qib_copy_from_sge()
302 u32 len = sge->length; in qib_copy_from_sge()
304 if (len > length) in qib_copy_from_sge()
305 len = length; in qib_copy_from_sge()
311 sge->length -= len; in qib_copy_from_sge()
316 } else if (sge->length == 0 && sge->mr->lkey) { in qib_copy_from_sge()
324 sge->length = in qib_copy_from_sge()
325 sge->mr->map[sge->m]->segs[sge->n].length; in qib_copy_from_sge()
328 length -= len; in qib_copy_from_sge()
383 wr->sg_list[0].length < sizeof(u64) || in qib_post_one_send()
401 wqe->length = 0; in qib_post_one_send()
407 u32 length = wr->sg_list[i].length; in qib_post_one_send() local
410 if (length == 0) in qib_post_one_send()
416 wqe->length += length; in qib_post_one_send()
423 if (wqe->length > 0x80000000U) in qib_post_one_send()
425 } else if (wqe->length > (dd_from_ibdev(qp->ibqp.device)->pport + in qib_post_one_send()
735 static void update_sge(struct qib_sge_state *ss, u32 length) in update_sge() argument
739 sge->vaddr += length; in update_sge()
740 sge->length -= length; in update_sge()
741 sge->sge_length -= length; in update_sge()
745 } else if (sge->length == 0 && sge->mr->lkey) { in update_sge()
752 sge->length = sge->mr->map[sge->m]->segs[sge->n].length; in update_sge()
793 u32 length, unsigned flush_wc) in copy_io() argument
800 u32 len = ss->sge.length; in copy_io()
803 if (len > length) in copy_io()
804 len = length; in copy_io()
823 if (len == length) { in copy_io()
834 if (len == length) { in copy_io()
866 if (len == length) { in copy_io()
877 if (len == length) { in copy_io()
883 } else if (len == length) { in copy_io()
887 } else if (len == length) { in copy_io()
914 length -= len; in copy_io()
917 update_sge(ss, length); in copy_io()
1325 if (likely(ss->num_sge == 1 && len <= ss->sge.length && in qib_verbs_send_pio()