Home
last modified time | relevance | path

Searched refs:hwpt (Results 1 - 6 of 6) sorted by relevance

/kernel/linux/linux-6.6/drivers/iommu/iommufd/
H A Dhw_pagetable.c12 struct iommufd_hw_pagetable *hwpt = in iommufd_hw_pagetable_destroy() local
15 if (!list_empty(&hwpt->hwpt_item)) { in iommufd_hw_pagetable_destroy()
16 mutex_lock(&hwpt->ioas->mutex); in iommufd_hw_pagetable_destroy()
17 list_del(&hwpt->hwpt_item); in iommufd_hw_pagetable_destroy()
18 mutex_unlock(&hwpt->ioas->mutex); in iommufd_hw_pagetable_destroy()
20 iopt_table_remove_domain(&hwpt->ioas->iopt, hwpt->domain); in iommufd_hw_pagetable_destroy()
23 if (hwpt->domain) in iommufd_hw_pagetable_destroy()
24 iommu_domain_free(hwpt->domain); in iommufd_hw_pagetable_destroy()
26 refcount_dec(&hwpt in iommufd_hw_pagetable_destroy()
31 struct iommufd_hw_pagetable *hwpt = iommufd_hw_pagetable_abort() local
44 iommufd_hw_pagetable_enforce_cc(struct iommufd_hw_pagetable *hwpt) iommufd_hw_pagetable_enforce_cc() argument
77 struct iommufd_hw_pagetable *hwpt; iommufd_hw_pagetable_alloc() local
139 struct iommufd_hw_pagetable *hwpt; iommufd_hwpt_alloc() local
[all...]
H A Ddevice.c25 WARN_ON(igroup->hwpt || !list_empty(&igroup->device_list)); in iommufd_group_release()
296 struct iommufd_hw_pagetable *hwpt) in iommufd_group_setup_msi()
314 if (sw_msi_start != PHYS_ADDR_MAX && !hwpt->msi_cookie) { in iommufd_group_setup_msi()
315 rc = iommu_get_msi_cookie(hwpt->domain, sw_msi_start); in iommufd_group_setup_msi()
323 hwpt->msi_cookie = true; in iommufd_group_setup_msi()
328 int iommufd_hw_pagetable_attach(struct iommufd_hw_pagetable *hwpt, in iommufd_hw_pagetable_attach() argument
335 if (idev->igroup->hwpt != NULL && idev->igroup->hwpt != hwpt) { in iommufd_hw_pagetable_attach()
342 rc = iommufd_hw_pagetable_enforce_cc(hwpt); in iommufd_hw_pagetable_attach()
295 iommufd_group_setup_msi(struct iommufd_group *igroup, struct iommufd_hw_pagetable *hwpt) iommufd_group_setup_msi() argument
383 struct iommufd_hw_pagetable *hwpt = idev->igroup->hwpt; iommufd_hw_pagetable_detach() local
399 iommufd_device_do_attach(struct iommufd_device *idev, struct iommufd_hw_pagetable *hwpt) iommufd_device_do_attach() argument
411 iommufd_device_do_replace(struct iommufd_device *idev, struct iommufd_hw_pagetable *hwpt) iommufd_device_do_replace() argument
510 struct iommufd_hw_pagetable *hwpt; iommufd_device_auto_get_domain() local
583 struct iommufd_hw_pagetable *hwpt = iommufd_device_change_pt() local
677 struct iommufd_hw_pagetable *hwpt; iommufd_device_detach() local
[all...]
H A Diommufd_private.h246 int iommufd_hw_pagetable_enforce_cc(struct iommufd_hw_pagetable *hwpt);
247 int iommufd_hw_pagetable_attach(struct iommufd_hw_pagetable *hwpt,
256 struct iommufd_hw_pagetable *hwpt) in iommufd_hw_pagetable_put()
258 lockdep_assert_not_held(&hwpt->ioas->mutex); in iommufd_hw_pagetable_put()
259 if (hwpt->auto_domain) in iommufd_hw_pagetable_put()
260 iommufd_object_deref_user(ictx, &hwpt->obj); in iommufd_hw_pagetable_put()
262 refcount_dec(&hwpt->obj.users); in iommufd_hw_pagetable_put()
270 struct iommufd_hw_pagetable *hwpt; member
255 iommufd_hw_pagetable_put(struct iommufd_ctx *ictx, struct iommufd_hw_pagetable *hwpt) iommufd_hw_pagetable_put() argument
H A Dselftest.c328 struct iommufd_hw_pagetable *hwpt; in get_md_pagetable() local
335 hwpt = container_of(obj, struct iommufd_hw_pagetable, obj); in get_md_pagetable()
336 if (hwpt->domain->ops != mock_ops.default_domain_ops) { in get_md_pagetable()
337 iommufd_put_object(&hwpt->obj); in get_md_pagetable()
340 *mock = container_of(hwpt->domain, struct mock_iommu_domain, domain); in get_md_pagetable()
341 return hwpt; in get_md_pagetable()
518 struct iommufd_hw_pagetable *hwpt; in iommufd_test_md_check_pa() local
528 hwpt = get_md_pagetable(ucmd, mockpt_id, &mock); in iommufd_test_md_check_pa()
529 if (IS_ERR(hwpt)) in iommufd_test_md_check_pa()
530 return PTR_ERR(hwpt); in iommufd_test_md_check_pa()
[all...]
H A Dvfio_compat.c258 struct iommufd_hw_pagetable *hwpt; in iommufd_vfio_cc_iommu() local
267 list_for_each_entry(hwpt, &ioas->hwpt_list, hwpt_item) { in iommufd_vfio_cc_iommu()
268 if (!hwpt->enforce_cache_coherency) { in iommufd_vfio_cc_iommu()
H A Dmain.c309 struct iommu_hwpt_alloc hwpt; member

Completed in 5 milliseconds