Lines Matching refs:io_pagetable

4  * The io_pagetable is the top of datastructure that maps IOVA's to PFNs. The
19 #include "io_pagetable.h"
31 struct io_pagetable *iopt,
108 static int iopt_alloc_iova(struct io_pagetable *iopt, unsigned long *iova,
163 static int iopt_check_iova(struct io_pagetable *iopt, unsigned long iova,
189 static int iopt_insert_area(struct io_pagetable *iopt, struct iopt_area *area,
236 static int iopt_alloc_area_pages(struct io_pagetable *iopt,
344 int iopt_map_pages(struct io_pagetable *iopt, struct list_head *pages_list,
381 * @iopt: io_pagetable to act on
394 * iopt_unmap_iova() must be called to undo this before the io_pagetable can be
397 int iopt_map_user_pages(struct iommufd_ctx *ictx, struct io_pagetable *iopt,
427 int iopt_get_pages(struct io_pagetable *iopt, unsigned long iova,
468 static int iopt_unmap_iova_range(struct io_pagetable *iopt, unsigned long start,
549 * @iopt: io_pagetable to act on
557 int iopt_unmap_iova(struct io_pagetable *iopt, unsigned long iova,
571 int iopt_unmap_all(struct io_pagetable *iopt, unsigned long *unmapped)
583 int iopt_set_allow_iova(struct io_pagetable *iopt,
604 int iopt_reserve_iova(struct io_pagetable *iopt, unsigned long start,
625 static void __iopt_remove_reserved_iova(struct io_pagetable *iopt, void *owner)
643 void iopt_remove_reserved_iova(struct io_pagetable *iopt, void *owner)
650 void iopt_init_table(struct io_pagetable *iopt)
668 void iopt_destroy_table(struct io_pagetable *iopt)
689 * @iopt: io_pagetable to act on
696 static void iopt_unfill_domain(struct io_pagetable *iopt,
750 * @iopt: io_pagetable to act on
756 static int iopt_fill_domain(struct io_pagetable *iopt,
812 static int iopt_check_iova_alignment(struct io_pagetable *iopt,
840 int iopt_table_add_domain(struct io_pagetable *iopt,
918 static int iopt_calculate_iova_alignment(struct io_pagetable *iopt)
954 void iopt_table_remove_domain(struct io_pagetable *iopt,
1002 struct io_pagetable *iopt = area->iopt;
1099 int iopt_cut_iova(struct io_pagetable *iopt, unsigned long *iovas,
1120 void iopt_enable_large_pages(struct io_pagetable *iopt)
1133 int iopt_disable_large_pages(struct io_pagetable *iopt)
1159 int iopt_add_access(struct io_pagetable *iopt, struct iommufd_access *access)
1185 void iopt_remove_access(struct io_pagetable *iopt,
1198 int iopt_table_enforce_dev_resv_regions(struct io_pagetable *iopt,