Defined in 1 files as a prototype:
Defined in 2 files as a function:
Referenced in 14 files:
- arch/arm/mm/dma-mapping.c, line 1645
- drivers/gpu/drm/exynos/exynos_drm_dma.c, line 89
- drivers/gpu/drm/msm/msm_iommu.c, line 684
- drivers/gpu/drm/nouveau/nvkm/engine/device/tegra.c
- drivers/gpu/drm/rockchip/rockchip_drm_drv.c, line 88
- drivers/infiniband/hw/usnic/usnic_uiom.c
- drivers/iommu/iommu.c, line 2264
- drivers/media/platform/qcom/venus/firmware.c, line 377
- drivers/media/platform/rockchip/rkvdec/rkvdec.c, line 1433
- drivers/net/wireless/ath/ath10k/snoc.c
- drivers/net/wireless/ath/ath11k/ahb.c
- drivers/remoteproc/remoteproc_core.c, line 139
- drivers/uio/uio_pci_generic_sva.c, line 37
- drivers/vhost/vdpa.c, line 1377
Smatch caller information:
drivers/vhost/vdpa.c vhost_vdpa_free_domain() -> iommu_detach_device()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 1 | dev | unit_byte |
| HALF_LOCKED2 | &d->mutex |
drivers/net/wireless/ath/ath10k/snoc.c ath10k_fw_deinit() -> iommu_detach_device()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 4096-ptr_max |
| PARAM_VALUE | 0 | domain->ops | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/net/wireless/ath/ath10k/snoc.c ath10k_fw_init() -> iommu_detach_device()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 4096-ptr_max |
| PARAM_VALUE | 0 | domain->ops->iotlb_sync | 0,4096-ptr_max |
| PARAM_VALUE | 0 | domain->ops->map_pages | 0 |
| PARAM_VALUE | 1 | dev | 4096-ptr_max |
| PARAM_VALUE | 1 | dev->dma_mem | 1-u64max |
| PARAM_VALUE | 1 | dev->iommu | 4096-ptr_max |
| PARAM_VALUE | 1 | dev->iommu->iommu_dev | 4096-ptr_max |
| PARAM_VALUE | 1 | dev->iommu->iommu_dev->ops | 4096-ptr_max |
| PARAM_VALUE | 1 | dev->iommu_group | 0 |
| BUF_SIZE | 0 | domain | (-1),112 |
| BUF_SIZE | 0 | domain | (-1),112 |
| BUF_SIZE | 1 | dev | 1616 |
| DATA_SOURCE | 0 | domain | r iommu_paging_domain_alloc |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/media/platform/qcom/venus/firmware.c venus_firmware_deinit() -> iommu_detach_device()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | dev | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &_dev->mutex | ||
| TYPE_LOCK | (struct device)->mutex |
drivers/gpu/drm/msm/msm_iommu.c msm_iommu_detach() -> iommu_detach_device()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 1 | dev | unit_byte |
drivers/remoteproc/remoteproc_core.c rproc_disable_iommu() -> iommu_detach_device()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 1 | dev | unit_byte |
| LOCK2 | &rproc->lock | ||
| TYPE_LOCK | (struct rproc)->lock |
drivers/media/platform/rockchip/rkvdec/rkvdec.c rkvdec_iommu_restore() -> iommu_detach_device()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 1-u64max |
| PARAM_VALUE | 1 | dev | 4096-ptr_max |
| PARAM_VALUE | 1 | dev->iommu_group | 0,4096-ptr_max |
| CAPPED_DATA | 0 | domain | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | _T->lock |
drivers/gpu/drm/exynos/exynos_drm_dma.c drm_iommu_detach_device() -> iommu_detach_device()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | dev->power.wakeirq->status | 0-4294967295 |
| BUF_SIZE | 1 | dev | (-1),1616 |
| BUF_SIZE | 1 | dev | (-1),1616 |
| DATA_SOURCE | 1 | dev | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/infiniband/hw/usnic/usnic_uiom.c usnic_uiom_attach_dev_to_pd() -> iommu_detach_device()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | dev | 4096-ptr_max |
| PARAM_VALUE | 1 | dev->iommu | 0,4096-ptr_max |
| PARAM_VALUE | 1 | dev->iommu->iommu_dev | 0,4096-ptr_max |
| PARAM_VALUE | 1 | dev->iommu->iommu_dev->ops->capable | 0,462993810217750528,1218212999370723328,2068158786969784320,4814261608348082176,5273877608991895552,6378217523337945088 |
| PARAM_VALUE | 1 | dev->iommu_group | 4096-ptr_max |
| CAPPED_DATA | 0 | domain | 1 |
| DATA_SOURCE | 1 | dev | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &us_ibdev->usdev_lock | ||
| LOCK2 | &vf->lock | ||
| TYPE_LOCK | (struct usnic_ib_dev)->usdev_lock | ||
| TYPE_LOCK | (struct usnic_ib_vf)->lock |
drivers/infiniband/hw/usnic/usnic_uiom.c usnic_uiom_detach_dev_from_pd() -> iommu_detach_device()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | dev | 4096-ptr_max |
| CAPPED_DATA | 1 | dev | 1 |
| DATA_SOURCE | 1 | dev | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &vf->lock | ||
| HALF_LOCKED2 | &us_ibdev->usdev_lock | ||
| TYPE_LOCK | (struct usnic_ib_dev)->usdev_lock | ||
| TYPE_LOCK | (struct usnic_ib_vf)->lock |
drivers/net/wireless/ath/ath11k/ahb.c ath11k_ahb_fw_resource_deinit() -> iommu_detach_device()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 4096-ptr_max |
| PARAM_VALUE | 0 | domain->ops | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/net/wireless/ath/ath11k/ahb.c ath11k_ahb_fw_resources_init() -> iommu_detach_device()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 4096-ptr_max |
| PARAM_VALUE | 0 | domain->ops | 4096-ptr_max |
| PARAM_VALUE | 0 | domain->ops->iotlb_sync | 0,4096-ptr_max |
| PARAM_VALUE | 0 | domain->ops->map_pages | 0 |
| PARAM_VALUE | 1 | dev | 4096-ptr_max |
| PARAM_VALUE | 1 | dev->dma_mem | 1-u64max |
| PARAM_VALUE | 1 | dev->iommu | 4096-ptr_max |
| PARAM_VALUE | 1 | dev->iommu->iommu_dev | 4096-ptr_max |
| PARAM_VALUE | 1 | dev->iommu->iommu_dev->ops | 4096-ptr_max |
| PARAM_VALUE | 1 | dev->iommu_group | 0 |
| BUF_SIZE | 0 | domain | (-1),112 |
| BUF_SIZE | 0 | domain | (-1),112 |
| BUF_SIZE | 1 | dev | 1616 |
| DATA_SOURCE | 0 | domain | r iommu_paging_domain_alloc |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/gpu/drm/rockchip/rockchip_drm_drv.c rockchip_drm_dma_detach_device() -> iommu_detach_device()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 1-u64max |
| DATA_SOURCE | 1 | dev | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &state->dev->mode_config.connection_mutex | ||
| HALF_LOCKED2 | &state->dev->mode_config.connection_mutex.mutex | ||
| HALF_LOCKED2 | &vop->vop_lock | ||
| HALF_LOCKED2 | &vop2->vop2_lock |
drivers/uio/uio_pci_generic_sva.c uio_pci_sva_open() -> iommu_detach_device()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | domain | 1-u64max |
| PARAM_VALUE | 1 | dev | 4096-ptr_max |
| PARAM_VALUE | 1 | dev->iommu_group | 4096-ptr_max |
| DATA_SOURCE | 0 | domain | r iommu_get_domain_for_dev |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &idev->info_lock | ||
| TYPE_LOCK | (struct uio_device)->info_lock |