Defined in 1 files as a prototype:
Defined in 3 files as a function:
- drivers/iommu/iommu.c, line 2708 (as a function)
- include/linux/iommu.h, line 1275 (as a function)
- tools/testing/selftests/vfio/lib/include/libvfio/iommu.h, line 40 (as a function)
Referenced in 27 files:
- arch/arm/mm/dma-mapping.c
- drivers/accel/amdxdna/amdxdna_iommu.c, line 134
- drivers/gpu/drm/nouveau/nvkm/subdev/instmem/gk20a.c, line 477
- drivers/gpu/drm/tegra/drm.c, line 1057
- drivers/gpu/host1x/cdma.c, line 108
- drivers/infiniband/hw/usnic/usnic_uiom.c
- drivers/iommu/dma-iommu.c
- drivers/iommu/generic_pt/kunit_generic_pt.h, line 19
- drivers/iommu/generic_pt/kunit_iommu_pt.h, line 372
- drivers/iommu/iommu.c
- drivers/iommu/iommufd/driver.c, line 232
- drivers/iommu/iommufd/pages.c
- drivers/media/platform/qcom/venus/firmware.c, line 154
- drivers/media/platform/rockchip/rkvdec/rkvdec-rcb.c, line 133
- drivers/net/ipa/ipa_mem.c
- drivers/net/wireless/ath/ath10k/snoc.c, line 1673
- drivers/net/wireless/ath/ath11k/ahb.c
- drivers/remoteproc/qcom_q6v5_adsp.c, line 363
- drivers/remoteproc/qcom_q6v5_pas.c, line 275
- drivers/remoteproc/remoteproc_core.c
- drivers/vfio/vfio_iommu_type1.c
- drivers/vhost/vdpa.c, line 1019
- sound/usb/qcom/qc_audio_offload.c
- tools/testing/selftests/kvm/irq_test.c, line 108
- tools/testing/selftests/vfio/vfio_dma_mapping_mmio_test.c, line 99
- tools/testing/selftests/vfio/vfio_dma_mapping_test.c
- tools/testing/selftests/vfio/vfio_pci_driver_test.c, line 43
Smatch caller information:
drivers/gpu/drm/nouveau/nvkm/subdev/instmem/gk20a.c gk20a_instobj_ctor_iommu() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 1-u64max |
| PARAM_VALUE | 0 | domain->ops->map_pages | 0 |
| PARAM_VALUE | 3 | size | 4096 |
| PARAM_VALUE | 4 | prot | 3 |
| PARAM_VALUE | 5 | gfp | 3264 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 3 | size | unit_byte |
| HALF_LOCKED2 | &cgrp->mutex | ||
| HALF_LOCKED2 | &gr->fecs.mutex | ||
| HALF_LOCKED2 | &subdev->use.mutex |
drivers/vhost/vdpa.c vhost_vdpa_map() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 4 | prot | 4-7 |
| PARAM_VALUE | 5 | gfp | 4197568 |
| CAPPED_DATA | 1 | iova | 1 |
| CAPPED_DATA | 1 | iova | 1 |
| CAPPED_DATA | 3 | size | 1 |
| CAPPED_DATA | 3 | size | 1 |
| DATA_SOURCE | 1 | iova | $2 |
| DATA_SOURCE | 2 | paddr | $4 |
| DATA_SOURCE | 3 | size | $3 |
| BIT_INFO | 4 | prot | 0x4,0x7 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 1 | iova | unit_byte |
| UNITS | 2 | paddr | unit_byte |
| UNITS | 3 | size | unit_byte |
| LOCK2 | &dev->mm->mmap_lock | ||
| LOCK2 | &dev->mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock | ||
| TYPE_LOCK | (struct vhost_dev)->mutex |
drivers/iommu/iommufd/pages.c batch_iommu_map_small() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 1-u64max |
| PARAM_VALUE | 0 | domain->ops->iotlb_sync | 0,5867195247508373504,7564901004766887936,7723566286289076224,8743500591539974144,9062639100917301248 |
| PARAM_VALUE | 0 | domain->ops->map_pages | 0 |
| PARAM_VALUE | 0 | domain->owner->domain_alloc_paging_flags | 0,5681659404854812672,8509805123710701568,8930407207250460672,8966249347349827584 |
| PARAM_VALUE | 3 | size | 4096 |
| PARAM_VALUE | 5 | gfp | 4197568 |
| BUF_SIZE | 0 | domain | (-1),112 |
| BUF_SIZE | 0 | domain | (-1),112 |
| BUF_SIZE | 0 | domain->iommufd_hwpt | (-1),40 |
| DATA_SOURCE | 0 | domain | $0 |
| DATA_SOURCE | 1 | iova | $1 [m] |
| DATA_SOURCE | 2 | paddr | $2 [m] |
| DATA_SOURCE | 4 | prot | $4 |
| USER_DATA | 0 | domain->iommufd_hwpt->pasid_compat | 0-1[c] |
| UNITS | 3 | size | unit_byte |
| LOCK2 | &iopt->domains_rwsem | ||
| HALF_LOCKED2 | &ioas->mutex | ||
| HALF_LOCKED2 | &iopt->iova_rwsem | ||
| HALF_LOCKED2 | &pages->mutex | ||
| HALF_LOCKED2 | _T->lock | ||
| TYPE_LOCK | (struct io_pagetable)->domains_rwsem |
drivers/iommu/iommufd/pages.c batch_to_domain() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 1-u64max |
| PARAM_VALUE | 0 | domain->ops->iotlb_sync | 0,5867195247508373504,7564901004766887936,7723566286289076224,8743500591539974144,9062639100917301248 |
| PARAM_VALUE | 0 | domain->ops->map_pages | 0 |
| PARAM_VALUE | 0 | domain->owner->domain_alloc_paging_flags | 0,5681659404854812672,8509805123710701568,8930407207250460672,8966249347349827584 |
| PARAM_VALUE | 2 | paddr | 0-u32max |
| PARAM_VALUE | 5 | gfp | 4197568 |
| BUF_SIZE | 0 | domain | (-1),112 |
| BUF_SIZE | 0 | domain | (-1),112 |
| BUF_SIZE | 0 | domain->iommufd_hwpt | (-1),40 |
| CAPPED_DATA | 0 | domain | 1 |
| DATA_SOURCE | 0 | domain | $1 |
| USER_DATA | 0 | domain->iommufd_hwpt->pasid_compat | 0-1[c] |
| UNITS | 1 | iova | unit_byte |
| UNITS | 2 | paddr | unit_byte |
| UNITS | 3 | size | unit_byte |
| LOCK2 | &iopt->domains_rwsem | ||
| HALF_LOCKED2 | &ioas->mutex | ||
| HALF_LOCKED2 | &iopt->iova_rwsem | ||
| HALF_LOCKED2 | &pages->mutex | ||
| HALF_LOCKED2 | _T->lock | ||
| TYPE_LOCK | (struct io_pagetable)->domains_rwsem |
drivers/accel/amdxdna/amdxdna_iommu.c amdxdna_iommu_alloc() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 4096-ptr_max |
| PARAM_VALUE | 4 | prot | 3 |
| PARAM_VALUE | 5 | gfp | 3264 |
| CAPPED_DATA | 2 | paddr | 1 |
| CAPPED_DATA | 3 | size | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &xdna->dev_lock | ||
| HALF_LOCKED2 | global &drm_unplug_srcu |
sound/usb/qcom/qc_audio_offload.c uaudio_iommu_map_pa() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | iova | 1-u64max |
| PARAM_VALUE | 2 | paddr | 0,4096-18446744073709547520 |
| PARAM_VALUE | 3 | size | 4096 |
| PARAM_VALUE | 4 | prot | 7 |
| PARAM_VALUE | 5 | gfp | 3264 |
| CAPPED_DATA | 2 | paddr | 1 |
| CAPPED_DATA | 2 | paddr | 1 |
| DATA_SOURCE | 2 | paddr | $2 |
| DATA_SOURCE | 3 | size | $3 |
| DATA_SOURCE | 4 | prot | r uaudio_iommu_map_prot |
| FUZZY_MAX | 1 | iova | 4096 |
| BIT_INFO | 2 | paddr | 0x0,0xfffffffffffff000 |
| BIT_INFO | 2 | paddr | 0x0,0xfffffffffffff000 |
| UNITS | 3 | size | unit_byte |
| LOCK2 | &pool->lock | ||
| LOCK2 | _T->lock | ||
| LOCK2 | global &qdev_mutex | ||
| HALF_LOCKED2 | &txn->lock |
sound/usb/qcom/qc_audio_offload.c uaudio_iommu_map_xfer_buf() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 4096-ptr_max |
| PARAM_VALUE | 0 | domain->is_iommupt | 1 |
| PARAM_VALUE | 0 | domain->ops->map_pages | 0 |
| PARAM_VALUE | 0 | domain->pgsize_bitmap | 1-u64max |
| PARAM_VALUE | 2 | paddr | 0,4096-18446744073709547520 |
| PARAM_VALUE | 3 | size | 0,4096-u32max |
| PARAM_VALUE | 4 | prot | 3,7 |
| PARAM_VALUE | 5 | gfp | 3264 |
| CAPPED_DATA | 2 | paddr | 1 |
| CAPPED_DATA | 2 | paddr | 1 |
| FUZZY_MAX | 4 | prot | 3 |
| BIT_INFO | 2 | paddr | 0x0,0xfffffffffffff000 |
| BIT_INFO | 2 | paddr | 0x0,0xfffffffffffff000 |
| BIT_INFO | 3 | size | 0x0,0xfffff000 |
| BIT_INFO | 3 | size | 0x0,0xfffff000 |
| BIT_INFO | 4 | prot | 0x3,0x7 |
| LOCK2 | &pool->lock | ||
| LOCK2 | _T->lock | ||
| LOCK2 | global &qdev_mutex | ||
| HALF_LOCKED2 | &txn->lock |
drivers/net/wireless/ath/ath10k/snoc.c ath10k_fw_init() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 4096-ptr_max |
| PARAM_VALUE | 4 | prot | 3 |
| PARAM_VALUE | 5 | gfp | 3264 |
| BUF_SIZE | 0 | domain | (-1),112 |
| BUF_SIZE | 0 | domain | (-1),112 |
| DATA_SOURCE | 0 | domain | r iommu_paging_domain_alloc |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 1 | iova | unit_byte |
| UNITS | 3 | size | unit_byte |
drivers/iommu/dma-iommu.c __iommu_dma_map() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 4096-9223372036854775807 |
| PARAM_VALUE | 0 | domain->ops->attach_dev | 0,4096-ptr_max |
| PARAM_VALUE | 1 | iova | 1-u64max |
| PARAM_VALUE | 4 | prot | 0,5-7,17-19,37-39,49-51 |
| PARAM_VALUE | 5 | gfp | 2080 |
| CAPPED_DATA | 3 | size | 1 |
| CAPPED_DATA | 3 | size | 1 |
| DATA_SOURCE | 0 | domain | r iommu_get_dma_domain |
| DATA_SOURCE | 1 | iova | r iommu_dma_alloc_iova |
| DATA_SOURCE | 3 | size | r iova_align |
| DATA_SOURCE | 4 | prot | $3 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HOST_DATA | 3 | size | 0-12884905984[c] |
| USER_DATA | 3 | size | 0,4096-4294967296[c] |
| NO_OVERFLOW_SIMPLE | 0 | domain->msi_cookie->msi_iova | |
| UNITS | 2 | paddr | unit_byte |
| UNITS | 3 | size | unit_byte |
drivers/iommu/dma-iommu.c iommu_dma_get_msi_page() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 4096-ptr_max |
| PARAM_VALUE | 0 | domain->cookie_type | 1-2 |
| PARAM_VALUE | 1 | iova | 1-u64max |
| PARAM_VALUE | 4 | prot | 26 |
| PARAM_VALUE | 5 | gfp | 3264 |
| DATA_SOURCE | 0 | domain | $2 |
| DATA_SOURCE | 1 | iova | r iommu_dma_alloc_iova |
| DATA_SOURCE | 2 | paddr | $1 [m] |
| DATA_SOURCE | 3 | size | r cookie_msi_granule |
| NO_OVERFLOW_SIMPLE | 0 | domain->msi_cookie->msi_iova | |
| UNITS | 2 | paddr | unit_byte |
| LOCK2 | _T->lock |
drivers/media/platform/qcom/venus/firmware.c venus_boot_no_tz() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | iova | 0 |
| PARAM_VALUE | 2 | paddr | 1-u64max |
| PARAM_VALUE | 3 | size | 1-u64max |
| PARAM_VALUE | 4 | prot | 35 |
| PARAM_VALUE | 5 | gfp | 3264 |
| DATA_SOURCE | 2 | paddr | $1 |
| DATA_SOURCE | 3 | size | $2 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &core->lock |
drivers/net/ipa/ipa_mem.c ipa_imem_init() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 1-u64max |
| PARAM_VALUE | 1 | iova | 0,4096-u64max |
| PARAM_VALUE | 2 | paddr | 0,4096-u64max |
| PARAM_VALUE | 3 | size | 0,4096-u64max |
| PARAM_VALUE | 4 | prot | 3 |
| PARAM_VALUE | 5 | gfp | 3264 |
| DATA_SOURCE | 0 | domain | r iommu_get_domain_for_dev |
| PARAM_COMPARE | 1 | iova | == $2 |
| PARAM_COMPARE | 1 | iova | == $2 |
| PARAM_COMPARE | 2 | paddr | == $1 |
| BIT_INFO | 1 | iova | 0x0,0xfffffffffffff000 |
| BIT_INFO | 1 | iova | 0x0,0xfffffffffffff000 |
| BIT_INFO | 2 | paddr | 0x0,0xfffffffffffff000 |
| BIT_INFO | 2 | paddr | 0x0,0xfffffffffffff000 |
| BIT_INFO | 3 | size | 0x0,0xfffffffffffff000 |
| BIT_INFO | 3 | size | 0x0,0xfffffffffffff000 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/net/ipa/ipa_mem.c ipa_smem_init() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 1-u64max |
| PARAM_VALUE | 1 | iova | 0,4096-u64max |
| PARAM_VALUE | 2 | paddr | 0,4096-u64max |
| PARAM_VALUE | 3 | size | 0,4096-u64max |
| PARAM_VALUE | 4 | prot | 3 |
| PARAM_VALUE | 5 | gfp | 3264 |
| CAPPED_DATA | 3 | size | 1 |
| CAPPED_DATA | 3 | size | 1 |
| DATA_SOURCE | 0 | domain | r iommu_get_domain_for_dev |
| PARAM_COMPARE | 1 | iova | == $2 |
| PARAM_COMPARE | 1 | iova | == $2 |
| PARAM_COMPARE | 2 | paddr | == $1 |
| BIT_INFO | 1 | iova | 0x0,0xfffffffffffff000 |
| BIT_INFO | 1 | iova | 0x0,0xfffffffffffff000 |
| BIT_INFO | 2 | paddr | 0x0,0xfffffffffffff000 |
| BIT_INFO | 2 | paddr | 0x0,0xfffffffffffff000 |
| BIT_INFO | 3 | size | 0x0,0xfffffffffffff000 |
| BIT_INFO | 3 | size | 0x0,0xfffffffffffff000 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/remoteproc/remoteproc_core.c rproc_alloc_carveout() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 1-u64max |
| PARAM_VALUE | 1 | iova | 0-4294967294 |
| PARAM_VALUE | 5 | gfp | 3264 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 1 | iova | unit_byte |
| UNITS | 3 | size | unit_byte |
| LOCK2 | &rproc->lock | ||
| HALF_LOCKED2 | &of->mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct rproc)->lock |
drivers/remoteproc/remoteproc_core.c rproc_handle_devmem() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 1-u64max |
| PARAM_VALUE | 5 | gfp | 3264 |
drivers/gpu/drm/tegra/drm.c tegra_drm_alloc() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 1-u64max |
| PARAM_VALUE | 4 | prot | 3 |
| PARAM_VALUE | 5 | gfp | 3264 |
| CAPPED_DATA | 2 | paddr | 1 |
| CAPPED_DATA | 3 | size | 1 |
| CAPPED_DATA | 3 | size | 1 |
| DATA_SOURCE | 1 | iova | r iova_dma_addr |
| DATA_SOURCE | 3 | size | r iova_align |
| UNITS | 3 | size | unit_byte |
| HALF_LOCKED2 | &lock |
drivers/vfio/vfio_iommu_type1.c vfio_iommu_map() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain->ops->map_pages | 0 |
| PARAM_VALUE | 2 | paddr | 0,4096-18446744073709547520 |
| PARAM_VALUE | 3 | size | 0,4096-18446744073709547520 |
| PARAM_VALUE | 4 | prot | 5-7 |
| PARAM_VALUE | 5 | gfp | 4197568 |
| DATA_SOURCE | 1 | iova | $1 |
| CAPABLE | 0 | 14 | |
| BIT_INFO | 2 | paddr | 0x0,0xfffffffffffff000 |
| BIT_INFO | 3 | size | 0x0,0xfffffffffffff000 |
| BIT_INFO | 4 | prot | 0x4,0x7 |
| USER_DATA | 3 | size | 0,4096-18446744073709543424[c] |
| UNITS | 1 | iova | unit_byte |
| UNITS | 2 | paddr | unit_byte |
| UNITS | 3 | size | unit_byte |
| LOCK2 | &iommu->lock | ||
| TYPE_LOCK | (struct vfio_iommu)->lock |
drivers/vfio/vfio_iommu_type1.c vfio_iommu_replay() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 4096-ptr_max |
| PARAM_VALUE | 0 | domain->ops | 4096-ptr_max |
| PARAM_VALUE | 0 | domain->ops->enforce_cache_coherency | 0,6771135090529189888,7103604897055576064,7157214075461996544 |
| PARAM_VALUE | 0 | domain->ops->map_pages | 0 |
| PARAM_VALUE | 3 | size | 0,4096-u64max |
| PARAM_VALUE | 4 | prot | 0,4-s32max |
| PARAM_VALUE | 5 | gfp | 4197568 |
| CAPPED_DATA | 0 | domain | 1 |
| CAPPED_DATA | 0 | domain->ops | 1 |
| FUZZY_MAX | 3 | size | 4096 |
| BIT_INFO | 4 | prot | 0x4,0xffffffff |
| UNITS | 1 | iova | unit_byte |
| UNITS | 2 | paddr | unit_byte |
| UNITS | 3 | size | unit_byte |
| LOCK2 | &container->group_lock | ||
| LOCK2 | &iommu->lock | ||
| HALF_LOCKED2 | &group->group_lock | ||
| HALF_LOCKED2 | global &vfio.iommu_drivers_lock | ||
| TYPE_LOCK | (struct vfio_container)->group_lock | ||
| TYPE_LOCK | (struct vfio_iommu)->lock |
drivers/infiniband/hw/usnic/usnic_uiom.c usnic_uiom_map_sorted_intervals() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain->ops->map_pages | 0 |
| PARAM_VALUE | 1 | iova | 0,4096-u64max |
| PARAM_VALUE | 4 | prot | 7 |
| PARAM_VALUE | 5 | gfp | 2080 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 1 | iova | 0,4096-9223372036854775807[c] |
| UNITS | 1 | iova | unit_byte |
| UNITS | 2 | paddr | unit_byte |
| UNITS | 3 | size | unit_byte |
| LOCK2 | &pd->lock | ||
| TYPE_LOCK | (struct usnic_uiom_pd)->lock |
drivers/infiniband/hw/usnic/usnic_uiom.c usnic_uiom_map_sorted_intervals() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain->ops->map_pages | 0 |
| PARAM_VALUE | 1 | iova | 0,4096-u64max |
| PARAM_VALUE | 4 | prot | 7 |
| PARAM_VALUE | 5 | gfp | 2080 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 1 | iova | 0,4096-9223372036854775807[c] |
| UNITS | 1 | iova | unit_byte |
| UNITS | 2 | paddr | unit_byte |
| UNITS | 3 | size | unit_byte |
| LOCK2 | &pd->lock | ||
| TYPE_LOCK | (struct usnic_uiom_pd)->lock |
drivers/net/wireless/ath/ath11k/ahb.c ath11k_ahb_fw_resources_init() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 4096-ptr_max |
| PARAM_VALUE | 3 | size | 0-4294967295 |
| PARAM_VALUE | 4 | prot | 3 |
| PARAM_VALUE | 5 | gfp | 3264 |
| BUF_SIZE | 0 | domain | (-1),112 |
| BUF_SIZE | 0 | domain | (-1),112 |
| DATA_SOURCE | 0 | domain | r iommu_paging_domain_alloc |
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/net/wireless/ath/ath11k/ahb.c ath11k_ahb_fw_resources_init() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 4096-ptr_max |
| PARAM_VALUE | 0 | domain->is_iommupt | 1 |
| PARAM_VALUE | 0 | domain->ops->iotlb_sync | 0,4096-ptr_max |
| PARAM_VALUE | 0 | domain->ops->map_pages | 0 |
| PARAM_VALUE | 0 | domain->pgsize_bitmap | 1-u64max |
| PARAM_VALUE | 3 | size | 0-4294967295 |
| PARAM_VALUE | 4 | prot | 3 |
| PARAM_VALUE | 5 | gfp | 3264 |
| BUF_SIZE | 0 | domain | (-1),112 |
| BUF_SIZE | 0 | domain | (-1),112 |
| DATA_SOURCE | 0 | domain | r iommu_paging_domain_alloc |
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/iommu/iommu.c iommu_create_device_direct_mappings() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 4096-ptr_max |
| PARAM_VALUE | 0 | domain->ops->attach_dev | 0,4096-ptr_max |
| PARAM_VALUE | 0 | domain->ops->cache_invalidate_user | 0,749766203511472128,6513038070009405440 |
| PARAM_VALUE | 0 | domain->ops->enforce_cache_coherency | 0,6771135090529189888,7103604897055576064,7157214075461996544 |
| PARAM_VALUE | 0 | domain->ops->flush_iotlb_all | 0,1409264724003270656,7012404210964918272,8586290232470175744 |
| PARAM_VALUE | 0 | domain->ops->free | 0,4096-ptr_max |
| PARAM_VALUE | 0 | domain->ops->iotlb_sync | 0,5867195247508373504,7564901004766887936,7723566286289076224,8743500591539974144,9062639100917301248 |
| PARAM_VALUE | 0 | domain->ops->iotlb_sync_map | 0,6940270464466649088,6998128456535617536 |
| PARAM_VALUE | 0 | domain->ops->iova_to_phys | 0,1955669761700835328,2834890145562849280,4985586088501190656,6538246597230686208,8807475656703016960 |
| PARAM_VALUE | 0 | domain->ops->map_pages | 0 |
| PARAM_VALUE | 0 | domain->ops->set_dev_pasid | 0,1191539796096278528,2449680511270084608,2937103414544289792,6236364466895036416,7122971417634123776 |
| PARAM_VALUE | 0 | domain->ops->set_pgtable_quirks | 0 |
| PARAM_VALUE | 0 | domain->ops->unmap_pages | 0 |
| PARAM_VALUE | 0 | domain->owner->blocked_domain | 0,532766077614051328,1309262597071863808,3360818763908841472,5161617956659249152,5314750282517213184,6300359532015144960 |
| PARAM_VALUE | 0 | domain->owner->capable | 0,462993810217750528,1218212999370723328,2068158786969784320,4814261608348082176,5273877608991895552,6378217523337945088 |
| PARAM_VALUE | 0 | domain->owner->def_domain_type | 0,757924381194936320,3094419801163452416,5117618908541267968,5322346410050064384 |
| PARAM_VALUE | 0 | domain->owner->default_domain | 0,5314750282517213184 |
| PARAM_VALUE | 0 | domain->owner->device_group | 0,4096-ptr_max |
| PARAM_VALUE | 0 | domain->owner->domain_alloc_identity | 0,1824181410664046592 |
| PARAM_VALUE | 0 | domain->owner->domain_alloc_nested | 0,3787243451007922176,5587605712304230400 |
| PARAM_VALUE | 0 | domain->owner->domain_alloc_paging | 0,4096-ptr_max |
| PARAM_VALUE | 0 | domain->owner->domain_alloc_paging_flags | 0,5681659404854812672,8509805123710701568,8930407207250460672,8966249347349827584 |
| PARAM_VALUE | 0 | domain->owner->domain_alloc_sva | 0,701458021798502400,7542271727435345920 |
| PARAM_VALUE | 0 | domain->owner->get_resv_regions | 0,1505888117193461760,1796066543583182848,4029229782243753984,4300132076315938816,5136130486519664640,5287335354533576704,8650506204712415232 |
| PARAM_VALUE | 0 | domain->owner->get_viommu_size | 0,890856020400304128,8808264738914050048 |
| PARAM_VALUE | 0 | domain->owner->hw_info | 0,4734748057756364800,6417568837149130752,7401392304513224704 |
| PARAM_VALUE | 0 | domain->owner->identity_domain | 0,4096-ptr_max |
| PARAM_VALUE | 0 | domain->owner->is_attach_deferred | 0,5818038523887214592,7788280626033360896 |
| PARAM_VALUE | 0 | domain->owner->of_xlate | 0,4096-ptr_max |
| PARAM_VALUE | 0 | domain->owner->owner | 0 |
| PARAM_VALUE | 0 | domain->owner->page_response | 0,6092340583743537152,6863561957491752960,7827827559097483264 |
| PARAM_VALUE | 0 | domain->owner->probe_device | 0,4096-ptr_max |
| PARAM_VALUE | 0 | domain->owner->probe_finalize | 0,4224741400359067648,6516402457225019392,8434375612550443008,8539622431235026944 |
| PARAM_VALUE | 0 | domain->owner->release_device | 0,4096-ptr_max |
| PARAM_VALUE | 0 | domain->owner->release_domain | 0,109353748397924352,532766077614051328,3360818763908841472,5161617956659249152,8123815121812471808 |
| PARAM_VALUE | 0 | domain->owner->viommu_init | 0,3877766920581869568,5010379558565462016 |
| PARAM_VALUE | 0 | domain->type | 0-3,5-u32max |
| PARAM_VALUE | 3 | size | 1-u64max |
| PARAM_VALUE | 5 | gfp | 3264 |
| BUF_SIZE | 0 | domain | (-1),112 |
| BUF_SIZE | 0 | domain | (-1),112 |
| CAPPED_DATA | 0 | domain | 1 |
| DATA_SOURCE | 0 | domain | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &group->mutex | ||
| HALF_LOCKED2 | global &iommu_probe_device_lock | ||
| TYPE_LOCK | (struct iommu_group)->mutex |
drivers/media/platform/rockchip/rkvdec/rkvdec-rcb.c rkvdec_allocate_rcb() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 1-u64max |
| PARAM_VALUE | 0 | domain->ops->map_pages | 0 |
| PARAM_VALUE | 1 | iova | 1-u64max |
| PARAM_VALUE | 3 | size | 0,4096-4294967296 |
| PARAM_VALUE | 4 | prot | 3 |
| PARAM_VALUE | 5 | gfp | 0 |
| BIT_INFO | 3 | size | 0x0,0x1fffff000 |
| BIT_INFO | 3 | size | 0x0,0x1fffff000 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &dmxdev->mutex | ||
| HALF_LOCKED2 | q->lock |
drivers/gpu/host1x/cdma.c host1x_pushbuffer_init() -> iommu_map()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 1-u64max |
| PARAM_VALUE | 4 | prot | 1 |
| PARAM_VALUE | 5 | gfp | 3264 |
| CAPPED_DATA | 3 | size | 1 |
| DATA_SOURCE | 1 | iova | r iova_dma_addr |
| DATA_SOURCE | 3 | size | r iova_align |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &device->clients_lock |