Home
last modified time | relevance | path

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

/linux-6.15/drivers/infiniband/core/
H A Dumem_dmabuf.c29 if (umem_dmabuf->sgt) in ib_umem_dmabuf_map_pages()
40 end = ALIGN(umem_dmabuf->umem.address + umem_dmabuf->umem.length, in ib_umem_dmabuf_map_pages()
65 umem_dmabuf->umem.sgt_append.sgt.sgl = umem_dmabuf->first_sg; in ib_umem_dmabuf_map_pages()
109 dma_buf_unmap_attachment(umem_dmabuf->attach, umem_dmabuf->sgt, in ib_umem_dmabuf_unmap_pages()
142 umem_dmabuf = kzalloc(sizeof(*umem_dmabuf), GFP_KERNEL); in ib_umem_dmabuf_get_with_dma_device()
143 if (!umem_dmabuf) { in ib_umem_dmabuf_get_with_dma_device()
162 umem_dmabuf); in ib_umem_dmabuf_get_with_dma_device()
167 return umem_dmabuf; in ib_umem_dmabuf_get_with_dma_device()
170 kfree(umem_dmabuf); in ib_umem_dmabuf_get_with_dma_device()
227 return umem_dmabuf; in ib_umem_dmabuf_get_pinned_with_dma_device()
[all …]
H A DMakefile44 ib_uverbs-$(CONFIG_INFINIBAND_USER_MEM) += umem.o umem_dmabuf.o
/linux-6.15/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-6.15/drivers/infiniband/hw/mana/
H A Dmr.c183 struct ib_umem_dmabuf *umem_dmabuf; in mana_ib_reg_user_mr_dmabuf() local
199 umem_dmabuf = ib_umem_dmabuf_get_pinned(ibdev, start, length, fd, access_flags); in mana_ib_reg_user_mr_dmabuf()
200 if (IS_ERR(umem_dmabuf)) { in mana_ib_reg_user_mr_dmabuf()
201 err = PTR_ERR(umem_dmabuf); in mana_ib_reg_user_mr_dmabuf()
206 mr->umem = &umem_dmabuf->umem; in mana_ib_reg_user_mr_dmabuf()
/linux-6.15/drivers/infiniband/hw/mlx5/
H A Dmr.c1559 struct mlx5_ib_mr *mr = umem_dmabuf->private; in mlx5_ib_dmabuf_invalidate_cb()
1563 if (!umem_dmabuf->sgt || !mr) in mlx5_ib_dmabuf_invalidate_cb()
1567 ib_umem_dmabuf_unmap_pages(umem_dmabuf); in mlx5_ib_dmabuf_invalidate_cb()
1583 struct ib_umem_dmabuf *umem_dmabuf; in reg_user_mr_dmabuf() local
1591 umem_dmabuf = ib_umem_dmabuf_get(&dev->ib_dev, in reg_user_mr_dmabuf()
1600 if (IS_ERR(umem_dmabuf)) { in reg_user_mr_dmabuf()
1602 PTR_ERR(umem_dmabuf)); in reg_user_mr_dmabuf()
1603 return ERR_CAST(umem_dmabuf); in reg_user_mr_dmabuf()
1609 ib_umem_release(&umem_dmabuf->umem); in reg_user_mr_dmabuf()
1616 umem_dmabuf->private = mr; in reg_user_mr_dmabuf()
[all …]
H A Dodp.c825 struct ib_umem_dmabuf *umem_dmabuf = to_ib_umem_dmabuf(mr->umem); in pagefault_dmabuf_mr() local
833 dma_resv_lock(umem_dmabuf->attach->dmabuf->resv, NULL); in pagefault_dmabuf_mr()
834 err = ib_umem_dmabuf_map_pages(umem_dmabuf); in pagefault_dmabuf_mr()
836 dma_resv_unlock(umem_dmabuf->attach->dmabuf->resv); in pagefault_dmabuf_mr()
840 page_size = mlx5_umem_dmabuf_find_best_pgsz(umem_dmabuf); in pagefault_dmabuf_mr()
842 ib_umem_dmabuf_unmap_pages(umem_dmabuf); in pagefault_dmabuf_mr()
850 dma_resv_unlock(umem_dmabuf->attach->dmabuf->resv); in pagefault_dmabuf_mr()
H A Dmlx5_ib.h108 mlx5_umem_dmabuf_find_best_pgsz(struct ib_umem_dmabuf *umem_dmabuf) in mlx5_umem_dmabuf_find_best_pgsz() argument
116 return ib_umem_find_best_pgsz(&umem_dmabuf->umem, PAGE_SIZE, in mlx5_umem_dmabuf_find_best_pgsz()
117 umem_dmabuf->umem.iova); in mlx5_umem_dmabuf_find_best_pgsz()
H A Ddevx.c2241 struct ib_umem_dmabuf *umem_dmabuf; in devx_umem_get() local
2249 umem_dmabuf = ib_umem_dmabuf_get_pinned( in devx_umem_get()
2251 if (IS_ERR(umem_dmabuf)) in devx_umem_get()
2252 return PTR_ERR(umem_dmabuf); in devx_umem_get()
2253 obj->umem = &umem_dmabuf->umem; in devx_umem_get()
/linux-6.15/drivers/infiniband/hw/efa/
H A Defa_verbs.c1733 struct ib_umem_dmabuf *umem_dmabuf; in efa_reg_user_mr_dmabuf() local
1743 umem_dmabuf = ib_umem_dmabuf_get_pinned(ibpd->device, start, length, fd, in efa_reg_user_mr_dmabuf()
1745 if (IS_ERR(umem_dmabuf)) { in efa_reg_user_mr_dmabuf()
1746 err = PTR_ERR(umem_dmabuf); in efa_reg_user_mr_dmabuf()
1751 mr->umem = &umem_dmabuf->umem; in efa_reg_user_mr_dmabuf()
/linux-6.15/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-6.15/drivers/infiniband/hw/bnxt_re/
H A Dib_verbs.c4262 struct ib_umem_dmabuf *umem_dmabuf; in bnxt_re_reg_user_mr_dmabuf() local
4266 umem_dmabuf = ib_umem_dmabuf_get_pinned(&rdev->ibdev, start, length, in bnxt_re_reg_user_mr_dmabuf()
4268 if (IS_ERR(umem_dmabuf)) in bnxt_re_reg_user_mr_dmabuf()
4269 return ERR_CAST(umem_dmabuf); in bnxt_re_reg_user_mr_dmabuf()
4271 umem = &umem_dmabuf->umem; in bnxt_re_reg_user_mr_dmabuf()