Lines Matching defs:iova
915 * @iova: Starting iova in the iopt
919 * linked to this iopt that intersect with iova,length. Anyone that has attached
928 void iommufd_access_notify_unmap(struct io_pagetable *iopt, unsigned long iova,
942 access->ops->unmap(access->data, iova, length);
953 * @iova: Starting IOVA
957 * this. The iova/length must exactly match the one provided to access_pages.
960 unsigned long iova, unsigned long length)
968 WARN_ON(check_add_overflow(iova, length - 1, &last_iova)))
983 iopt_for_each_contig_area(&iter, area, iopt, iova, last_iova)
1015 * iommufd_access_pin_pages() - Return a list of pages under the iova
1017 * @iova: Starting IOVA
1022 * Reads @length bytes starting at iova and returns the struct page * pointers.
1028 * This API always requires a page aligned iova. This happens naturally if the
1029 * ioas alignment is >= PAGE_SIZE and the iova is PAGE_SIZE aligned. However
1031 * aligned iova.
1033 int iommufd_access_pin_pages(struct iommufd_access *access, unsigned long iova,
1050 if (check_add_overflow(iova, length - 1, &last_iova))
1061 iopt_for_each_contig_area(&iter, area, iopt, iova, last_iova) {
1094 if (iova < iter.cur_iova) {
1096 iopt_for_each_contig_area(&iter, area, iopt, iova, last_iova)
1111 * iommufd_access_rw - Read or write data under the iova
1113 * @iova: Starting IOVA
1122 int iommufd_access_rw(struct iommufd_access *access, unsigned long iova,
1133 if (check_add_overflow(iova, length - 1, &last_iova))
1144 iopt_for_each_contig_area(&iter, area, iopt, iova, last_iova) {