Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/iommu/dma-iommu.c iommu_dma_iova_bounce_and_link() -> swiotlb_tbl_unmap_single()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->dma_io_tlb_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 dev->dma_io_tlb_mem 4096-ptr_max
PARAM_VALUE 0 dev->dma_io_tlb_mem->can_grow 1
PARAM_VALUE 0 dev->dma_io_tlb_mem->dyn_alloc.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 dev->dma_io_tlb_mem->nslabs 1-u64max
PARAM_VALUE 0 dev->dma_io_tlb_pools.next 4096-ptr_max
PARAM_VALUE 0 dev->dma_io_tlb_pools.next->prev 4096-ptr_max
PARAM_VALUE 0 dev->dma_parms 0,4096-ptr_max
PARAM_VALUE 0 dev->dma_range_map 0,4096-ptr_max
PARAM_VALUE 0 dev->dma_uses_io_tlb 1
PARAM_VALUE 0 dev->iommu_group 4096-ptr_max
PARAM_VALUE 0 dev->iommu_group->default_domain 0-s64max
PARAM_VALUE 0 dev->iommu_group->id s32min-s32max
PARAM_VALUE 1 addr 0-9223376434901286910,18446739675663040512-18446744073709551614
PARAM_VALUE 4 attrs 0,1024,4096,5120
CAPPED_DATA 2 size 1
CAPPED_DATA 2 size 1
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 addr r iommu_dma_map_swiotlb
DATA_SOURCE 2 size $3
DATA_SOURCE 3 dir $4
DATA_SOURCE 4 attrs $5
FUZZY_MAX 4 attrs 4096
BIT_INFO 4 attrs 0x0,0x0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 dev unit_byte
UNITS 1 addr unit_byte
UNITS 2 size unit_byte
HALF_LOCKED2 &gpusvm->notifier_lock
HALF_LOCKED2 &vm->lock

drivers/iommu/dma-iommu.c iommu_dma_iova_unlink_range_slow() -> swiotlb_tbl_unmap_single()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->iommu_group 4096-ptr_max
PARAM_VALUE 1 addr 1-u64max
PARAM_VALUE 4 attrs 0,1024,4096,5120
CAPPED_DATA 2 size 1
CAPPED_DATA 2 size 1
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 addr r iommu_iova_to_phys
DATA_SOURCE 3 dir $3
DATA_SOURCE 4 attrs $4
FUZZY_MAX 4 attrs 4096
BIT_INFO 4 attrs 0x0,0x17ff
BIT_INFO 4 attrs 0x0,0x17ff
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 dev unit_byte
UNITS 2 size unit_byte
HALF_LOCKED2 &umem_odp->umem_mutex

drivers/iommu/dma-iommu.c iommu_dma_map_phys() -> swiotlb_tbl_unmap_single()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->cma_area->available_count 0-s64max
PARAM_VALUE 0 dev->cma_area->nranges s32min-s32max
PARAM_VALUE 0 dev->dma_mask 0,4096-ptr_max
PARAM_VALUE 0 dev->flags 4096-ptr_max
PARAM_VALUE 0 dev->iommu_group 4096-ptr_max
PARAM_VALUE 0 dev->power.wakeirq->status 0-4294967295
BUF_SIZE 0 dev (-1),1616
BUF_SIZE 0 dev (-1),1616
CAPPED_DATA 0 dev 1
CAPPED_DATA 0 dev->cma_area->nranges 1
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 addr $1 [m]
DATA_SOURCE 2 size $2
DATA_SOURCE 3 dir $3
DATA_SOURCE 4 attrs $4
BIT_INFO 4 attrs 0x0,0xffffffffffffebff
BIT_INFO 4 attrs 0x0,0xffffffffffffebff
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 1 addr 0-u64max
HOST_DATA 2 size 0-12884905984[c]
USER_DATA 2 size 0,4096-4294967296[c]
NO_OVERFLOW_SIMPLE 0 dev->cma_area->available_count
UNITS 0 dev unit_byte
UNITS 1 addr unit_byte
UNITS 2 size unit_byte

drivers/iommu/dma-iommu.c iommu_dma_unmap_phys() -> swiotlb_tbl_unmap_single()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->cma_area->available_count 0-s64max
PARAM_VALUE 0 dev->cma_area->nranges s32min-s32max
PARAM_VALUE 0 dev->flags 4096-ptr_max
PARAM_VALUE 0 dev->iommu_group 4096-ptr_max
PARAM_VALUE 0 dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 1 addr 1-u64max
BUF_SIZE 0 dev (-1),1616
BUF_SIZE 0 dev (-1),1616
CAPPED_DATA 0 dev 1
CAPPED_DATA 2 size 1
CAPPED_DATA 2 size 1
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 addr r iommu_iova_to_phys
DATA_SOURCE 2 size $2
DATA_SOURCE 3 dir $3
DATA_SOURCE 4 attrs $4
BIT_INFO 4 attrs 0x0,0xffffffffffffebff
BIT_INFO 4 attrs 0x0,0xffffffffffffebff
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 1 addr 1-u64max
HOST_DATA 2 size 0-u64max[c]
USER_DATA 1 addr 1-u64max
USER_DATA 2 size 0,4096-4294967296[c]
NO_OVERFLOW_SIMPLE 0 dev->cma_area->available_count
UNITS 0 dev unit_byte
UNITS 2 size unit_byte

kernel/dma/mapping.c dma_direct_unmap_phys() -> swiotlb_tbl_unmap_single()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->cma_area->nranges s32min-s32max
PARAM_VALUE 0 dev->dma_mask 4096-ptr_max
PARAM_VALUE 0 dev->flags 4096-ptr_max
PARAM_VALUE 3 dir 0-2
PARAM_VALUE 4 attrs 0,32-u64max
BUF_SIZE 0 dev (-1),1616
BUF_SIZE 0 dev (-1),1616
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 addr r dma_to_phys
DATA_SOURCE 2 size $2
DATA_SOURCE 3 dir $3
FUZZY_MAX 3 dir 2
BIT_INFO 4 attrs 0x20,0xffffffffffffebff
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 1 addr 0-u64max[c]
HOST_DATA 2 size 0-16777200[c]
UNITS 0 dev unit_byte
UNITS 2 size unit_byte
HALF_LOCKED2 &umem_odp->umem_mutex

kernel/dma/direct.c dma_direct_unmap_phys() -> swiotlb_tbl_unmap_single()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->cma_area->available_count 0-s64max
PARAM_VALUE 0 dev->cma_area->nranges s32min-s32max
PARAM_VALUE 0 dev->dma_mask 4096-ptr_max
PARAM_VALUE 0 dev->flags 4096-ptr_max
PARAM_VALUE 0 dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 2 size 0-u32max
PARAM_VALUE 3 dir 0-2
PARAM_VALUE 4 attrs 0,32-u64max
BUF_SIZE 0 dev (-1),1616
BUF_SIZE 0 dev (-1),1616
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 addr r dma_to_phys
DATA_SOURCE 2 size $2
DATA_SOURCE 3 dir $3
BIT_INFO 4 attrs 0x20,0xffffffffffffebff
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 dev->cma_area->available_count
UNITS 0 dev unit_byte
UNITS 2 size unit_byte