Searched refs:umem_odp (Results 1 – 6 of 6) sorted by relevance
128 umem_odp = kzalloc(sizeof(*umem_odp), GFP_KERNEL); in ib_umem_odp_alloc_implicit()129 if (!umem_odp) in ib_umem_odp_alloc_implicit()142 kfree(umem_odp); in ib_umem_odp_alloc_implicit()145 return umem_odp; in ib_umem_odp_alloc_implicit()236 if (!umem_odp) in ib_umem_odp_get()256 return umem_odp; in ib_umem_odp_get()260 kfree(umem_odp); in ib_umem_odp_get()275 ib_umem_odp_unmap_dma_pages(umem_odp, ib_umem_start(umem_odp), in ib_umem_odp_release()283 kfree(umem_odp); in ib_umem_odp_release()323 umem_odp->npages++; in ib_umem_odp_map_dma_single_page()[all …]
45 ib_uverbs-$(CONFIG_INFINIBAND_ON_DEMAND_PAGING) += umem_odp.o
16 struct ib_umem_odp *umem_odp = in rxe_ib_invalidate_range() local23 mutex_lock(&umem_odp->umem_mutex); in rxe_ib_invalidate_range()82 struct ib_umem_odp *umem_odp; in rxe_odp_mr_init_user() local101 if (IS_ERR(umem_odp)) { in rxe_odp_mr_init_user()103 (int)PTR_ERR(umem_odp)); in rxe_odp_mr_init_user()104 return PTR_ERR(umem_odp); in rxe_odp_mr_init_user()107 umem_odp->private = mr; in rxe_odp_mr_init_user()109 mr->umem = &umem_odp->umem; in rxe_odp_mr_init_user()138 idx = (addr - ib_umem_start(umem_odp)) >> umem_odp->page_shift; in rxe_check_pagefault()193 idx = (iova - ib_umem_start(umem_odp)) >> umem_odp->page_shift; in __rxe_odp_mr_copy()[all …]
53 static inline unsigned long ib_umem_start(struct ib_umem_odp *umem_odp) in ib_umem_start() argument55 return umem_odp->notifier.interval_tree.start; in ib_umem_start()59 static inline unsigned long ib_umem_end(struct ib_umem_odp *umem_odp) in ib_umem_end() argument61 return umem_odp->notifier.interval_tree.last + 1; in ib_umem_end()64 static inline size_t ib_umem_odp_num_pages(struct ib_umem_odp *umem_odp) in ib_umem_odp_num_pages() argument66 return (ib_umem_end(umem_odp) - ib_umem_start(umem_odp)) >> in ib_umem_odp_num_pages()67 umem_odp->page_shift; in ib_umem_odp_num_pages()94 void ib_umem_odp_release(struct ib_umem_odp *umem_odp);96 int ib_umem_odp_map_dma_and_lock(struct ib_umem_odp *umem_odp, u64 start_offset,99 void ib_umem_odp_unmap_dma_pages(struct ib_umem_odp *umem_odp, u64 start_offset,[all …]
263 struct ib_umem_odp *umem_odp = in mlx5_ib_invalidate_range() local283 if (!umem_odp->npages) in mlx5_ib_invalidate_range()285 mr = umem_odp->private; in mlx5_ib_invalidate_range()299 idx = (addr - ib_umem_start(umem_odp)) >> umem_odp->page_shift; in mlx5_ib_invalidate_range()306 if (umem_odp->dma_list[idx] & in mlx5_ib_invalidate_range()599 struct ib_umem_odp *umem_odp; in mlx5_ib_alloc_implicit_mr() local607 if (IS_ERR(umem_odp)) in mlx5_ib_alloc_implicit_mr()608 return ERR_CAST(umem_odp); in mlx5_ib_alloc_implicit_mr()613 ib_umem_odp_release(umem_odp); in mlx5_ib_alloc_implicit_mr()620 imr->umem = &umem_odp->umem; in mlx5_ib_alloc_implicit_mr()[all …]
43 .. kernel-doc:: drivers/infiniband/core/umem_odp.c