Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a macro:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

kernel/dma/ops_helpers.c dma_common_mmap() -> dma_mmap_from_dev_coherent()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->cma_area->nranges s32min-s32max
PARAM_VALUE 0 dev->flags 4096-ptr_max
PARAM_VALUE 1 vma 4096-ptr_max
PARAM_VALUE 1 vma->vm_file->f_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 1 vma->vm_file->f_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 4 ret 1869222525108903936
PARAM_VALUE 4 *ret (-6)
BUF_SIZE 0 dev (-1),1616
BUF_SIZE 0 dev (-1),1616
BUF_SIZE 1 vma (-1),1-s32max
BUF_SIZE 1 vma (-1),1-s32max
BUF_SIZE 1 vma->vm_file (-1)-s32max
BUF_SIZE 1 vma->vm_ops (-1),144
BUF_SIZE 1 vma->vm_private_data (-1),1-s32max
BUF_SIZE 2 vaddr (-1),1-s32max
BUF_SIZE 2 vaddr (-1),1-s32max
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 vma $1
DATA_SOURCE 2 vaddr $2
DATA_SOURCE 3 size $4
NOSPEC 1 vma->vm_end
NOSPEC 1 vma->vm_pgoff
NOSPEC 1 vma->vm_start
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 vma->pfnmap_track_ctx->pfn 0-13510803177078779[c]
USER_DATA 1 vma->pfnmap_track_ctx->size 0,4096-u64max[c]
USER_DATA 1 vma->vm_end 0-u64max
USER_DATA 1 vma->vm_pgoff 0-4503599627370495[c]
USER_DATA 1 vma->vm_start 0-18446744073709547520
USER_DATA 3 size 0-u64max[c]
NO_OVERFLOW_SIMPLE 1 vma->vm_pgoff
HALF_LOCKED2 &dev->attach_lock
HALF_LOCKED2 &fbi->mm_lock
HALF_LOCKED2 &file->device->disassociate_srcu
HALF_LOCKED2 &file->disassociation_lock
HALF_LOCKED2 &idev->info_lock
HALF_LOCKED2 &info->mm_lock
HALF_LOCKED2 &q->mutex

drivers/iommu/dma-iommu.c iommu_dma_mmap() -> dma_mmap_from_dev_coherent()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->cma_area->nranges s32min-s32max
PARAM_VALUE 0 dev->flags 4096-ptr_max
PARAM_VALUE 1 vma 4096-ptr_max
PARAM_VALUE 1 vma->vm_file->f_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 1 vma->vm_file->f_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 4 ret 4348120509856526336
BUF_SIZE 0 dev (-1),1616
BUF_SIZE 0 dev (-1),1616
BUF_SIZE 1 vma (-1),1-s32max
BUF_SIZE 1 vma (-1),1-s32max
BUF_SIZE 1 vma->vm_file (-1)-s32max
BUF_SIZE 1 vma->vm_ops (-1),144
BUF_SIZE 1 vma->vm_private_data (-1),1-s32max
BUF_SIZE 2 vaddr (-1),1-s32max
BUF_SIZE 2 vaddr (-1),1-s32max
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 vma $1
DATA_SOURCE 2 vaddr $2
DATA_SOURCE 3 size $4
NOSPEC 1 vma->vm_end
NOSPEC 1 vma->vm_pgoff
NOSPEC 1 vma->vm_start
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 vma->pfnmap_track_ctx->pfn 0-13510803177078779[c]
USER_DATA 1 vma->pfnmap_track_ctx->size 0,4096-u64max[c]
USER_DATA 1 vma->vm_end 0-u64max
USER_DATA 1 vma->vm_pgoff 0-4503599627370495[c]
USER_DATA 1 vma->vm_start 0-18446744073709547520
USER_DATA 3 size 0-u64max[c]
NO_OVERFLOW_SIMPLE 1 vma->vm_pgoff
UNITS 0 dev unit_byte
UNITS 2 vaddr unit_byte
UNITS 3 size unit_byte
HALF_LOCKED2 &dev->attach_lock
HALF_LOCKED2 &fbi->mm_lock
HALF_LOCKED2 &file->device->disassociate_srcu
HALF_LOCKED2 &file->disassociation_lock
HALF_LOCKED2 &idev->info_lock
HALF_LOCKED2 &info->mm_lock
HALF_LOCKED2 &q->mutex

kernel/dma/direct.c dma_direct_mmap() -> dma_mmap_from_dev_coherent()

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_ops 0
PARAM_VALUE 0 dev->flags 4096-ptr_max
PARAM_VALUE 1 vma 4096-ptr_max
PARAM_VALUE 1 vma->vm_file->f_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 1 vma->vm_file->f_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 4 ret 3266713712092250112
PARAM_VALUE 4 *ret (-6)
BUF_SIZE 0 dev (-1),1616
BUF_SIZE 0 dev (-1),1616
BUF_SIZE 1 vma (-1),1-s32max
BUF_SIZE 1 vma (-1),1-s32max
BUF_SIZE 1 vma->vm_file (-1)-s32max
BUF_SIZE 1 vma->vm_ops (-1),144
BUF_SIZE 1 vma->vm_private_data (-1),1-s32max
BUF_SIZE 2 vaddr (-1),1-s32max
BUF_SIZE 2 vaddr (-1),1-s32max
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 vma $1
DATA_SOURCE 2 vaddr $2
DATA_SOURCE 3 size $4
NOSPEC 1 vma->vm_end
NOSPEC 1 vma->vm_pgoff
NOSPEC 1 vma->vm_start
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 vma->pfnmap_track_ctx->pfn 0-13510803177078779[c]
USER_DATA 1 vma->pfnmap_track_ctx->size 0,4096-u64max[c]
USER_DATA 1 vma->vm_end 0-u64max
USER_DATA 1 vma->vm_pgoff 0-4503599627370495[c]
USER_DATA 1 vma->vm_start 0-18446744073709547520
USER_DATA 3 size 0-u64max[c]
NO_OVERFLOW_SIMPLE 1 vma->vm_pgoff
UNITS 0 dev unit_byte
UNITS 2 vaddr unit_byte
UNITS 3 size unit_byte
HALF_LOCKED2 &dev->attach_lock
HALF_LOCKED2 &fbi->mm_lock
HALF_LOCKED2 &file->device->disassociate_srcu
HALF_LOCKED2 &file->disassociation_lock
HALF_LOCKED2 &idev->info_lock
HALF_LOCKED2 &info->mm_lock
HALF_LOCKED2 &q->mutex