Searched refs:ioas (Results 1 – 5 of 5) sorted by relevance
| /linux/drivers/iommu/iommufd/ |
| H A D | vfio_compat.c | 17 struct iommufd_ioas *ioas = ERR_PTR(-ENODEV); in get_compat_ioas() local 22 ioas = ictx->vfio_ioas; in get_compat_ioas() 25 return ioas; in get_compat_ioas() 38 struct iommufd_ioas *ioas; in iommufd_vfio_compat_ioas_get_id() local 40 ioas = get_compat_ioas(ictx); in iommufd_vfio_compat_ioas_get_id() 41 if (IS_ERR(ioas)) in iommufd_vfio_compat_ioas_get_id() 42 return PTR_ERR(ioas); in iommufd_vfio_compat_ioas_get_id() 43 *out_ioas_id = ioas->obj.id; in iommufd_vfio_compat_ioas_get_id() 44 iommufd_put_object(ictx, &ioas->obj); in iommufd_vfio_compat_ioas_get_id() 82 struct iommufd_ioas *ioas = NULL; in iommufd_vfio_compat_ioas_create() local [all …]
|
| H A D | ioas.c | 15 struct iommufd_ioas *ioas = container_of(obj, struct iommufd_ioas, obj); in iommufd_ioas_destroy() local 18 rc = iopt_unmap_all(&ioas->iopt, NULL); in iommufd_ioas_destroy() 20 iopt_destroy_table(&ioas->iopt); in iommufd_ioas_destroy() 21 mutex_destroy(&ioas->mutex); in iommufd_ioas_destroy() 26 struct iommufd_ioas *ioas; in iommufd_ioas_alloc() local 28 ioas = iommufd_object_alloc(ictx, ioas, IOMMUFD_OBJ_IOAS); in iommufd_ioas_alloc() 29 if (IS_ERR(ioas)) in iommufd_ioas_alloc() 30 return ioas; in iommufd_ioas_alloc() 32 iopt_init_table(&ioas->iopt); in iommufd_ioas_alloc() 33 INIT_LIST_HEAD(&ioas->hwpt_list); in iommufd_ioas_alloc() [all …]
|
| H A D | device.c | 421 rc = iopt_table_enforce_dev_resv_regions(&hwpt_paging->ioas->iopt, in iommufd_device_attach_reserved_iova() 430 iopt_remove_reserved_iova(&hwpt_paging->ioas->iopt, in iommufd_device_attach_reserved_iova() 672 iopt_remove_reserved_iova(&hwpt_paging->ioas->iopt, idev->dev); in iommufd_hw_pagetable_attach() 711 iopt_remove_reserved_iova(&hwpt_paging->ioas->iopt, idev->dev); in iommufd_hw_pagetable_detach() 744 iopt_remove_reserved_iova(&hwpt_paging->ioas->iopt, cur->dev); in iommufd_group_remove_reserved_iova() 761 if (!old_hwpt_paging || hwpt_paging->ioas != old_hwpt_paging->ioas) { in iommufd_group_do_replace_reserved_iova() 764 &hwpt_paging->ioas->iopt, cur->dev, NULL); in iommufd_group_do_replace_reserved_iova() 827 (!hwpt_paging || hwpt_paging->ioas != old_hwpt_paging->ioas)) in iommufd_device_do_replace() 864 struct iommufd_ioas *ioas, u32 *pt_id, in iommufd_device_auto_get_domain() argument 884 mutex_lock(&ioas->mutex); in iommufd_device_auto_get_domain() [all …]
|
| H A D | selftest.c | 90 if (!access->ioas) { in iommufd_test_syz_conv_iova() 94 ret = __iommufd_test_syz_conv_iova(&access->ioas->iopt, iova); in iommufd_test_syz_conv_iova() 102 struct iommufd_ioas *ioas; in iommufd_test_syz_conv_iova_id() local 108 ioas = iommufd_get_ioas(ucmd->ictx, ioas_id); in iommufd_test_syz_conv_iova_id() 109 if (IS_ERR(ioas)) in iommufd_test_syz_conv_iova_id() 111 *iova = __iommufd_test_syz_conv_iova(&ioas->iopt, iova); in iommufd_test_syz_conv_iova_id() 112 iommufd_put_object(ucmd->ictx, &ioas->obj); in iommufd_test_syz_conv_iova_id() 1188 struct iommufd_ioas *ioas; in iommufd_test_add_reserved() local 1196 ioas = iommufd_get_ioas(ucmd->ictx, mockpt_id); in iommufd_test_add_reserved() 1197 if (IS_ERR(ioas)) in iommufd_test_add_reserved() [all …]
|
| H A D | viommu.c | 325 rc = iommufd_access_attach_internal(access, viommu->hwpt->ioas); in iommufd_hw_queue_alloc_phys()
|