Lines Matching refs:group

27 	xa_cmpxchg(&igroup->ictx->groups, iommu_group_id(igroup->group), igroup,  in iommufd_group_release()
29 iommu_group_put(igroup->group); in iommufd_group_release()
34 static void iommufd_put_group(struct iommufd_group *group) in iommufd_put_group() argument
36 kref_put(&group->ref, iommufd_group_release); in iommufd_put_group()
40 struct iommu_group *group) in iommufd_group_try_get() argument
48 if (WARN_ON(igroup->group != group)) in iommufd_group_try_get()
66 struct iommu_group *group; in iommufd_get_group() local
69 group = iommu_group_get(dev); in iommufd_get_group()
70 if (!group) in iommufd_get_group()
73 id = iommu_group_id(group); in iommufd_get_group()
77 if (iommufd_group_try_get(igroup, group)) { in iommufd_get_group()
79 iommu_group_put(group); in iommufd_get_group()
86 iommu_group_put(group); in iommufd_get_group()
95 new_igroup->group = group; in iommufd_get_group()
125 if (iommufd_group_try_get(igroup, group)) { in iommufd_get_group()
186 !iommu_group_has_isolated_msi(igroup->group)) { in iommufd_device_bind()
246 bool iommufd_ctx_has_group(struct iommufd_ctx *ictx, struct iommu_group *group) in iommufd_ctx_has_group() argument
251 if (!ictx || !group) in iommufd_ctx_has_group()
258 ->igroup->group == group) { in iommufd_ctx_has_group()
364 rc = iommu_attach_group(hwpt->domain, idev->igroup->group); in iommufd_hw_pagetable_attach()
388 iommu_detach_group(hwpt->domain, idev->igroup->group); in iommufd_hw_pagetable_detach()
456 rc = iommu_group_replace_domain(igroup->group, hwpt->domain); in iommufd_device_do_replace()