Home
last modified time | relevance | path

Searched refs:io_pagetable (Results 1 - 9 of 9) sorted by relevance

/kernel/linux/linux-6.6/drivers/iommu/iommufd/
H A Diommufd_private.h30 * 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 Dio_pagetable.c4 * 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 Dio_pagetable.h18 * 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 DMakefile5 io_pagetable.o \
H A Ddevice.c10 #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 Dvfio_compat.c358 struct io_pagetable *iopt = &ioas->iopt; in iommufd_get_pagesizes()
H A Dioas.c10 #include "io_pagetable.h"
148 struct io_pagetable *iopt; in iommufd_ioas_allow_iovas()
H A Dselftest.c16 #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 Dpages.c56 #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 11 milliseconds