Home
last modified time | relevance | path

Searched refs:umem_dmabuf (Results 1 – 7 of 7) sorted by relevance

/linux/drivers/infiniband/core/
H A Dumem_dmabuf.c15 int ib_umem_dmabuf_map_pages(struct ib_umem_dmabuf *umem_dmabuf) in ib_umem_dmabuf_map_pages() argument
24 dma_resv_assert_held(umem_dmabuf->attach->dmabuf->resv); in ib_umem_dmabuf_map_pages()
26 if (umem_dmabuf->revoked) in ib_umem_dmabuf_map_pages()
29 if (umem_dmabuf->sgt) in ib_umem_dmabuf_map_pages()
32 sgt = dma_buf_map_attachment(umem_dmabuf->attach, in ib_umem_dmabuf_map_pages()
39 start = ALIGN_DOWN(umem_dmabuf->umem.address, PAGE_SIZE); in ib_umem_dmabuf_map_pages()
40 end = ALIGN(umem_dmabuf->umem.address + umem_dmabuf->umem.length, in ib_umem_dmabuf_map_pages()
48 umem_dmabuf->first_sg = sg; in ib_umem_dmabuf_map_pages()
49 umem_dmabuf->first_sg_offset = offset; in ib_umem_dmabuf_map_pages()
57 umem_dmabuf->last_sg = sg; in ib_umem_dmabuf_map_pages()
[all …]
H A DMakefile43 ib_uverbs-$(CONFIG_INFINIBAND_USER_MEM) += umem.o umem_dmabuf.o
/linux/include/rdma/
H A Dib_umem.h159 int ib_umem_dmabuf_map_pages(struct ib_umem_dmabuf *umem_dmabuf);
160 void ib_umem_dmabuf_unmap_pages(struct ib_umem_dmabuf *umem_dmabuf);
161 void ib_umem_dmabuf_release(struct ib_umem_dmabuf *umem_dmabuf);
162 void ib_umem_dmabuf_revoke(struct ib_umem_dmabuf *umem_dmabuf);
216 static inline int ib_umem_dmabuf_map_pages(struct ib_umem_dmabuf *umem_dmabuf) in ib_umem_dmabuf_map_pages() argument
220 static inline void ib_umem_dmabuf_unmap_pages(struct ib_umem_dmabuf *umem_dmabuf) { } in ib_umem_dmabuf_unmap_pages() argument
221 static inline void ib_umem_dmabuf_release(struct ib_umem_dmabuf *umem_dmabuf) { } in ib_umem_dmabuf_release() argument
222 static inline void ib_umem_dmabuf_revoke(struct ib_umem_dmabuf *umem_dmabuf) {} in ib_umem_dmabuf_revoke() argument
/linux/drivers/infiniband/hw/mlx5/
H A Dmr.c1548 struct ib_umem_dmabuf *umem_dmabuf = attach->importer_priv; in mlx5_ib_dmabuf_invalidate_cb() local
1549 struct mlx5_ib_mr *mr = umem_dmabuf->private; in mlx5_ib_dmabuf_invalidate_cb()
1551 dma_resv_assert_held(umem_dmabuf->attach->dmabuf->resv); in mlx5_ib_dmabuf_invalidate_cb()
1553 if (!umem_dmabuf->sgt || !mr) in mlx5_ib_dmabuf_invalidate_cb()
1557 ib_umem_dmabuf_unmap_pages(umem_dmabuf); in mlx5_ib_dmabuf_invalidate_cb()
1573 struct ib_umem_dmabuf *umem_dmabuf; in reg_user_mr_dmabuf() local
1581 umem_dmabuf = ib_umem_dmabuf_get(&dev->ib_dev, in reg_user_mr_dmabuf()
1586 umem_dmabuf = ib_umem_dmabuf_get_pinned_with_dma_device(&dev->ib_dev, in reg_user_mr_dmabuf()
1590 if (IS_ERR(umem_dmabuf)) { in reg_user_mr_dmabuf()
1592 PTR_ERR(umem_dmabuf)); in reg_user_mr_dmabuf()
[all …]
H A Dodp.c823 struct ib_umem_dmabuf *umem_dmabuf = to_ib_umem_dmabuf(mr->umem); in pagefault_dmabuf_mr() local
831 dma_resv_lock(umem_dmabuf->attach->dmabuf->resv, NULL); in pagefault_dmabuf_mr()
832 err = ib_umem_dmabuf_map_pages(umem_dmabuf); in pagefault_dmabuf_mr()
834 dma_resv_unlock(umem_dmabuf->attach->dmabuf->resv); in pagefault_dmabuf_mr()
838 page_size = mlx5_umem_dmabuf_find_best_pgsz(umem_dmabuf); in pagefault_dmabuf_mr()
840 ib_umem_dmabuf_unmap_pages(umem_dmabuf); in pagefault_dmabuf_mr()
848 dma_resv_unlock(umem_dmabuf->attach->dmabuf->resv); in pagefault_dmabuf_mr()
/linux/drivers/infiniband/hw/irdma/
H A Dverbs.c3091 struct ib_umem_dmabuf *umem_dmabuf; in irdma_reg_user_mr_dmabuf() local
3098 umem_dmabuf = ib_umem_dmabuf_get_pinned(pd->device, start, len, fd, access); in irdma_reg_user_mr_dmabuf()
3099 if (IS_ERR(umem_dmabuf)) { in irdma_reg_user_mr_dmabuf()
3100 err = PTR_ERR(umem_dmabuf); in irdma_reg_user_mr_dmabuf()
3105 iwmr = irdma_alloc_iwmr(&umem_dmabuf->umem, pd, virt, IRDMA_MEMREG_TYPE_MEM); in irdma_reg_user_mr_dmabuf()
3121 ib_umem_release(&umem_dmabuf->umem); in irdma_reg_user_mr_dmabuf()
/linux/drivers/infiniband/hw/bnxt_re/
H A Dib_verbs.c4271 struct ib_umem_dmabuf *umem_dmabuf; in bnxt_re_reg_user_mr_dmabuf() local
4275 umem_dmabuf = ib_umem_dmabuf_get_pinned(&rdev->ibdev, start, length, in bnxt_re_reg_user_mr_dmabuf()
4277 if (IS_ERR(umem_dmabuf)) in bnxt_re_reg_user_mr_dmabuf()
4278 return ERR_CAST(umem_dmabuf); in bnxt_re_reg_user_mr_dmabuf()
4280 umem = &umem_dmabuf->umem; in bnxt_re_reg_user_mr_dmabuf()