Searched refs:umem_odp (Results 1 – 2 of 2) sorted by relevance
51 static void ib_init_umem_implicit_odp(struct ib_umem_odp *umem_odp) in ib_init_umem_implicit_odp() argument53 umem_odp->is_implicit_odp = 1; in ib_init_umem_implicit_odp()54 umem_odp->umem.is_odp = 1; in ib_init_umem_implicit_odp()55 mutex_init(&umem_odp->umem_mutex); in ib_init_umem_implicit_odp()58 static int ib_init_umem_odp(struct ib_umem_odp *umem_odp, in ib_init_umem_odp() argument61 struct ib_device *dev = umem_odp->umem.ibdev; in ib_init_umem_odp()62 size_t page_size = 1UL << umem_odp->page_shift; in ib_init_umem_odp()69 umem_odp->umem.is_odp = 1; in ib_init_umem_odp()70 mutex_init(&umem_odp->umem_mutex); in ib_init_umem_odp()72 start = ALIGN_DOWN(umem_odp->umem.address, page_size); in ib_init_umem_odp()[all …]
47 static inline unsigned long ib_umem_start(struct ib_umem_odp *umem_odp) in ib_umem_start() argument49 return umem_odp->notifier.interval_tree.start; in ib_umem_start()53 static inline unsigned long ib_umem_end(struct ib_umem_odp *umem_odp) in ib_umem_end() argument55 return umem_odp->notifier.interval_tree.last + 1; in ib_umem_end()58 static inline size_t ib_umem_odp_num_pages(struct ib_umem_odp *umem_odp) in ib_umem_odp_num_pages() argument60 return (ib_umem_end(umem_odp) - ib_umem_start(umem_odp)) >> in ib_umem_odp_num_pages()61 umem_odp->page_shift; in ib_umem_odp_num_pages()75 void ib_umem_odp_release(struct ib_umem_odp *umem_odp);77 int ib_umem_odp_map_dma_and_lock(struct ib_umem_odp *umem_odp, u64 start_offset,80 void ib_umem_odp_unmap_dma_pages(struct ib_umem_odp *umem_odp, u64 start_offset,[all …]