Lines Matching full:length

25 int mr_check_range(struct rxe_mr *mr, u64 iova, size_t length)  in mr_check_range()  argument
32 if (iova < mr->iova || length > mr->length || in mr_check_range()
33 iova > mr->iova + mr->length - length) in mr_check_range()
106 int rxe_mr_init_user(struct rxe_pd *pd, u64 start, u64 length, u64 iova, in rxe_mr_init_user() argument
118 umem = ib_umem_get(pd->ibpd.device, start, length, access); in rxe_mr_init_user()
142 if (length > 0) { in rxe_mr_init_user()
171 mr->length = length; in rxe_mr_init_user()
220 u64 length; in lookup_iova() local
231 length = mr->map[map_index]->buf[buf_index].size; in lookup_iova()
233 while (offset >= length) { in lookup_iova()
234 offset -= length; in lookup_iova()
241 length = mr->map[map_index]->buf[buf_index].size; in lookup_iova()
250 void *iova_to_vaddr(struct rxe_mr *mr, u64 iova, int length) in iova_to_vaddr() argument
267 if (mr_check_range(mr, iova, length)) { in iova_to_vaddr()
275 if (offset + length > mr->map[m]->buf[n].size) { in iova_to_vaddr()
287 /* copy data from a range (vaddr, vaddr+length-1) to or from
290 int rxe_mr_copy(struct rxe_mr *mr, u64 iova, void *addr, int length, in rxe_mr_copy() argument
302 if (length == 0) in rxe_mr_copy()
312 memcpy(dest, src, length); in rxe_mr_copy()
319 err = mr_check_range(mr, iova, length); in rxe_mr_copy()
330 while (length > 0) { in rxe_mr_copy()
339 if (bytes > length) in rxe_mr_copy()
340 bytes = length; in rxe_mr_copy()
344 length -= bytes; in rxe_mr_copy()
372 int length, in copy_data() argument
383 if (length == 0) in copy_data()
386 if (length > resid) { in copy_data()
391 if (sge->length && (offset < sge->length)) { in copy_data()
399 while (length > 0) { in copy_data()
400 bytes = length; in copy_data()
402 if (offset >= sge->length) { in copy_data()
416 if (sge->length) { in copy_data()
428 if (bytes > sge->length - offset) in copy_data()
429 bytes = sge->length - offset; in copy_data()
440 length -= bytes; in copy_data()
460 int advance_dma_data(struct rxe_dma_info *dma, unsigned int length) in advance_dma_data() argument
466 while (length) { in advance_dma_data()
469 if (offset >= sge->length) { in advance_dma_data()
477 bytes = length; in advance_dma_data()
479 if (bytes > sge->length - offset) in advance_dma_data()
480 bytes = sge->length - offset; in advance_dma_data()
484 length -= bytes; in advance_dma_data()