Documented in 1 files:
Defined in 2 files as a function:
- include/linux/dma-mapping.h, line 370 (as a function)
- include/linux/dma-mapping.h, line 390 (as a function)
Referenced in 9 files:
- drivers/dma-buf/dma-buf-mapping.c
- drivers/gpu/drm/drm_gpusvm.c
- drivers/gpu/drm/drm_pagemap.c
- drivers/nvme/host/pci.c, line 974
- drivers/vfio/pci/mlx5/cmd.c, line 372
- include/linux/blk-mq-dma.h
- include/net/tso.h, line 122
- mm/hmm.c
- net/core/tso.c
Smatch caller information:
drivers/net/ethernet/broadcom/bnxt/bnxt.c tso_dma_map_complete() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/gpu/drm/drm_gpusvm.c __drm_gpusvm_unmap_pages() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &gpusvm->notifier_lock | ||
| HALF_LOCKED2 | &vm->lock | ||
| TYPE_LOCK | (struct drm_gpusvm)->notifier_lock |
drivers/gpu/drm/drm_gpusvm.c drm_gpusvm_get_pages() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 4096-ptr_max |
| BUF_SIZE | 0 | state | 16 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &gpusvm->notifier_lock | ||
| TYPE_LOCK | (struct drm_gpusvm)->notifier_lock |
drivers/gpu/drm/drm_gpusvm.c drm_gpusvm_get_pages() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 4096-ptr_max |
| BUF_SIZE | 0 | state | 16 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &gpusvm->notifier_lock | ||
| TYPE_LOCK | (struct drm_gpusvm)->notifier_lock |
drivers/vfio/pci/mlx5/cmd.c unregister_dma_pages() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 4096-ptr_max |
| DATA_SOURCE | 0 | state | $3 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &mvdev->state_mutex | ||
| TYPE_LOCK | (struct mlx5vf_pci_core_device)->state_mutex |
drivers/gpu/drm/drm_pagemap.c drm_pagemap_migrate_map_system_pages() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 1195593651579117568,8637231281627271168,9032673953758285824 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | state->__size | 0-u64max[c] |
| HALF_LOCKED2 | &driver_migrate_lock | ||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | &vm->lock | ||
| HALF_LOCKED2 | global &drm_unplug_srcu |
drivers/gpu/drm/drm_pagemap.c drm_pagemap_migrate_map_system_pages() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 1195593651579117568,8637231281627271168,9032673953758285824 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | state->__size | 0-u64max[c] |
| HALF_LOCKED2 | &driver_migrate_lock | ||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | &vm->lock | ||
| HALF_LOCKED2 | global &drm_unplug_srcu |
drivers/gpu/drm/drm_pagemap.c drm_pagemap_migrate_unmap_pages() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 1195593651579117568,8637231281627271168,9032673953758285824 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | state->__size | 0-u64max[c] |
| HALF_LOCKED2 | &driver_migrate_lock | ||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | &vm->lock | ||
| HALF_LOCKED2 | global &drm_unplug_srcu |
drivers/dma-buf/dma-buf-mapping.c calc_sg_nents() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 4096-ptr_max |
| PARAM_VALUE | 0 | state->__size | 0 |
| BUF_SIZE | 0 | state | (-1),16 |
| BUF_SIZE | 0 | state | (-1),16 |
| DATA_SOURCE | 0 | state | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &bo->lock | ||
| HALF_LOCKED2 | &dbc->ch_lock | ||
| HALF_LOCKED2 | &qdev->dev_lock | ||
| HALF_LOCKED2 | &usr->qddev_lock | ||
| HALF_LOCKED2 | attach->dmabuf->resv | ||
| HALF_LOCKED2 | bo->base.base.resv | ||
| HALF_LOCKED2 | dmabuf->resv | ||
| HALF_LOCKED2 | resv |
drivers/dma-buf/dma-buf-mapping.c dma_buf_free_sgt() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &bo->lock | ||
| HALF_LOCKED2 | attach->dmabuf->resv | ||
| HALF_LOCKED2 | bo->base.base.resv | ||
| HALF_LOCKED2 | dmabuf->resv | ||
| HALF_LOCKED2 | resv |
drivers/dma-buf/dma-buf-mapping.c dma_buf_phys_vec_to_sgt() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 4096-ptr_max |
| BUF_SIZE | 0 | state | 16 |
| DATA_SOURCE | 0 | state | r _kzalloc_noprof |
| MEM_ZERO | 0 | state | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | state->__size | 0-u64max[c] |
| HALF_LOCKED2 | &bo->lock | ||
| HALF_LOCKED2 | &dbc->ch_lock | ||
| HALF_LOCKED2 | &qdev->dev_lock | ||
| HALF_LOCKED2 | &usr->qddev_lock | ||
| HALF_LOCKED2 | attach->dmabuf->resv | ||
| HALF_LOCKED2 | bo->base.base.resv | ||
| HALF_LOCKED2 | dmabuf->resv | ||
| HALF_LOCKED2 | resv |
drivers/dma-buf/dma-buf-mapping.c dma_buf_phys_vec_to_sgt() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 4096-ptr_max |
| BUF_SIZE | 0 | state | 16 |
| DATA_SOURCE | 0 | state | r _kzalloc_noprof |
| MEM_ZERO | 0 | state | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | state->__size | 0-u64max[c] |
| HALF_LOCKED2 | &bo->lock | ||
| HALF_LOCKED2 | &dbc->ch_lock | ||
| HALF_LOCKED2 | &qdev->dev_lock | ||
| HALF_LOCKED2 | &usr->qddev_lock | ||
| HALF_LOCKED2 | attach->dmabuf->resv | ||
| HALF_LOCKED2 | bo->base.base.resv | ||
| HALF_LOCKED2 | dmabuf->resv | ||
| HALF_LOCKED2 | resv |
drivers/dma-buf/dma-buf-mapping.c dma_buf_phys_vec_to_sgt() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 4096-ptr_max |
| BUF_SIZE | 0 | state | 16 |
| DATA_SOURCE | 0 | state | r _kzalloc_noprof |
| MEM_ZERO | 0 | state | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | state->__size | 0-u64max[c] |
| HALF_LOCKED2 | &bo->lock | ||
| HALF_LOCKED2 | &dbc->ch_lock | ||
| HALF_LOCKED2 | &qdev->dev_lock | ||
| HALF_LOCKED2 | &usr->qddev_lock | ||
| HALF_LOCKED2 | attach->dmabuf->resv | ||
| HALF_LOCKED2 | bo->base.base.resv | ||
| HALF_LOCKED2 | dmabuf->resv | ||
| HALF_LOCKED2 | resv |
drivers/dma-buf/dma-buf-mapping.c dma_buf_phys_vec_to_sgt() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 4096-ptr_max |
| BUF_SIZE | 0 | state | 16 |
| DATA_SOURCE | 0 | state | r _kzalloc_noprof |
| MEM_ZERO | 0 | state | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | state->__size | 0-u64max[c] |
| HALF_LOCKED2 | &bo->lock | ||
| HALF_LOCKED2 | &dbc->ch_lock | ||
| HALF_LOCKED2 | &qdev->dev_lock | ||
| HALF_LOCKED2 | &usr->qddev_lock | ||
| HALF_LOCKED2 | attach->dmabuf->resv | ||
| HALF_LOCKED2 | bo->base.base.resv | ||
| HALF_LOCKED2 | dmabuf->resv | ||
| HALF_LOCKED2 | resv |
drivers/nvme/host/pci.c blk_rq_dma_map_coalesce() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 4096-ptr_max |
| DATA_SOURCE | 0 | state | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | __tag_set->srcu | ||
| HALF_LOCKED2 | rcu_read |
drivers/nvme/host/pci.c blk_rq_dma_unmap() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 4096-ptr_max |
| DATA_SOURCE | 0 | state | $2 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/nvme/host/pci.c nvme_pci_prp_save_mapping() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | __tag_set->srcu | ||
| HALF_LOCKED2 | rcu_read |
net/core/tso.c tso_dma_map_cleanup() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 79462570366205976 |
| PARAM_VALUE | 0 | state->__size | 0 |
| MEM_ZERO | 0 | state | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &dev->tx_global_lock | ||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | rcu_read |
net/core/tso.c tso_dma_map_count() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 79462570366205976 |
| PARAM_VALUE | 0 | state->__size | 0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &dev->tx_global_lock | ||
| HALF_LOCKED2 | &txq->_xmit_lock | ||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | rcu_read |
net/core/tso.c tso_dma_map_next() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 79462570366205976 |
| PARAM_VALUE | 0 | state->__size | 0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &dev->tx_global_lock | ||
| HALF_LOCKED2 | &txq->_xmit_lock | ||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | rcu_read |
mm/hmm.c hmm_dma_map_free() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING |
mm/hmm.c hmm_dma_map_pfn() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 4096-ptr_max |
| BUF_SIZE | 0 | state | 16 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &odp_imr->umem_mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &umem_odp->umem_mutex |
mm/hmm.c hmm_dma_map_pfn() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 4096-ptr_max |
| BUF_SIZE | 0 | state | 16 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &odp_imr->umem_mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &umem_odp->umem_mutex |
mm/hmm.c hmm_dma_unmap_pfn() -> dma_use_iova()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | state | 4096-ptr_max |
| BUF_SIZE | 0 | state | 16 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &umem_odp->umem_mutex | ||
| TYPE_LOCK | (struct ib_umem_odp)->umem_mutex |