Searched refs:io_pagetable (Results 1 - 9 of 9) sorted by relevance
/kernel/linux/linux-6.6/drivers/iommu/iommufd/ |
H A D | iommufd_private.h | 30 * domains and permits sharing of PFNs between io_pagetable instances. This 33 * domains. The io_pagetable holds an interval tree of iopt_areas which point 38 struct io_pagetable { struct 54 void iopt_init_table(struct io_pagetable *iopt); 55 void iopt_destroy_table(struct io_pagetable *iopt); 56 int iopt_get_pages(struct io_pagetable *iopt, unsigned long iova, 62 int iopt_map_user_pages(struct iommufd_ctx *ictx, struct io_pagetable *iopt, 66 int iopt_map_pages(struct io_pagetable *iopt, struct list_head *pages_list, 69 int iopt_unmap_iova(struct io_pagetable *iopt, unsigned long iova, 71 int iopt_unmap_all(struct io_pagetable *iop [all...] |
H A D | io_pagetable.c | 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, in iopt_area_contig_init() 108 static int iopt_alloc_iova(struct io_pagetable *iopt, unsigned long *iova, in iopt_alloc_iova() 163 static int iopt_check_iova(struct io_pagetable *iopt, unsigned long iova, in iopt_check_iova() 189 static int iopt_insert_area(struct io_pagetable *iopt, struct iopt_area *area, in iopt_insert_area() 236 static int iopt_alloc_area_pages(struct io_pagetable *iopt, in iopt_alloc_area_pages() 344 int iopt_map_pages(struct io_pagetable *iopt, struct list_head *pages_list, in iopt_map_pages() 381 * @iopt: io_pagetable to act on 394 * iopt_unmap_iova() must be called to undo this before the io_pagetable ca [all...] |
H A D | io_pagetable.h | 18 * Each io_pagetable is composed of intervals of areas which cover regions of 34 * The io_pagetable::iova_rwsem protects node 42 struct io_pagetable *iopt; 119 struct io_pagetable *iopt, unsigned long start, \ 153 struct io_pagetable *iopt, 181 * io_pagetable's, through their iopt_area's, can share a single iopt_pages
|
H A D | Makefile | 5 io_pagetable.o \
|
H A D | device.c | 10 #include "io_pagetable.h" 878 void iommufd_access_notify_unmap(struct io_pagetable *iopt, unsigned long iova, in iommufd_access_notify_unmap() 913 struct io_pagetable *iopt; in iommufd_access_unpin_pages() 988 struct io_pagetable *iopt; in iommufd_access_pin_pages() 1076 struct io_pagetable *iopt; in iommufd_access_rw()
|
H A D | vfio_compat.c | 358 struct io_pagetable *iopt = &ioas->iopt; in iommufd_get_pagesizes()
|
H A D | ioas.c | 10 #include "io_pagetable.h" 148 struct io_pagetable *iopt; in iommufd_ioas_allow_iovas()
|
H A D | selftest.c | 16 #include "io_pagetable.h" 47 static unsigned long iommufd_test_syz_conv_iova(struct io_pagetable *iopt, in iommufd_test_syz_conv_iova()
|
H A D | pages.c | 56 #include "io_pagetable.h" 1355 * given domain. Called when attaching a new domain to an io_pagetable. 1404 * area's io_pagetable and the area is installed in the domains_itree. 1494 struct io_pagetable *iopt = area->iopt; in iopt_area_unfill_domains()
|
Completed in 10 milliseconds