Lines Matching defs:iopt

347 	rc = iopt_table_enforce_dev_resv_regions(&hwpt->ioas->iopt, idev->dev,
374 iopt_remove_reserved_iova(&hwpt->ioas->iopt, idev->dev);
391 iopt_remove_reserved_iova(&hwpt->ioas->iopt, idev->dev);
446 &hwpt->ioas->iopt, cur->dev, NULL);
462 iopt_remove_reserved_iova(&old_hwpt->ioas->iopt,
482 iopt_remove_reserved_iova(&hwpt->ioas->iopt, cur->dev);
493 * the iopt and if one is found use it, otherwise create a new domain.
713 rc = iopt_add_access(&new_ioas->iopt, access);
727 iopt_remove_access(&cur_ioas->iopt, access, iopt_access_list_id);
863 * iommufd_access_notify_unmap - Notify users of an iopt to stop using it
864 * @iopt: iopt to work on
865 * @iova: Starting iova in the iopt
869 * linked to this iopt that intersect with iova,length. Anyone that has attached
878 void iommufd_access_notify_unmap(struct io_pagetable *iopt, unsigned long iova,
882 container_of(iopt, struct iommufd_ioas, iopt);
886 xa_lock(&ioas->iopt.access_list);
887 xa_for_each(&ioas->iopt.access_list, index, access) {
890 xa_unlock(&ioas->iopt.access_list);
895 xa_lock(&ioas->iopt.access_list);
897 xa_unlock(&ioas->iopt.access_list);
913 struct io_pagetable *iopt;
930 iopt = &access->ioas_unpin->iopt;
932 down_read(&iopt->iova_rwsem);
933 iopt_for_each_contig_area(&iter, area, iopt, iova, last_iova)
940 up_read(&iopt->iova_rwsem);
988 struct io_pagetable *iopt;
1008 iopt = &access->ioas->iopt;
1010 down_read(&iopt->iova_rwsem);
1011 iopt_for_each_contig_area(&iter, area, iopt, iova, last_iova) {
1039 up_read(&iopt->iova_rwsem);
1046 iopt_for_each_contig_area(&iter, area, iopt, iova, last_iova)
1054 up_read(&iopt->iova_rwsem);
1076 struct io_pagetable *iopt;
1091 iopt = &access->ioas->iopt;
1093 down_read(&iopt->iova_rwsem);
1094 iopt_for_each_contig_area(&iter, area, iopt, iova, last_iova) {
1118 up_read(&iopt->iova_rwsem);