Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_migrate.c svm_migrate_vma_to_ram() -> svm_range_dma_unmap_dev()

Type Parameter Key Value
PARAM_VALUE 0 dev->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 1 dma_addr 4096-ptr_max
PARAM_VALUE 2 offset 0
PARAM_VALUE 3 npages 0-4503599627370495
CAPPED_DATA 3 npages 1
CAPPED_DATA 3 npages 1
PARAM_COMPARE 1 dma_addr > $3
PARAM_COMPARE 3 npages < $1
PARAM_COMPARE 3 npages < $1
NOSPEC 3 npages
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 3 npages 0-4503599627370495[c]
UNITS 0 dev unit_byte
UNITS 1 dma_addr unit_page
UNITS 3 npages unit_page
LOCK2 &prange->migrate_mutex
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &p->svms.lock
HALF_LOCKED2 &process_info->lock
HALF_LOCKED2 &svms->lock
TYPE_LOCK (struct svm_range)->migrate_mutex

drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_migrate.c svm_migrate_vma_to_vram() -> svm_range_dma_unmap_dev()

Type Parameter Key Value
PARAM_VALUE 2 offset 0
PARAM_VALUE 3 npages 0-4503599627370495
CAPPED_DATA 3 npages 1
CAPPED_DATA 3 npages 1
PARAM_COMPARE 1 dma_addr > $3
PARAM_COMPARE 3 npages < $1
PARAM_COMPARE 3 npages < $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 3 npages
UNITS 0 dev unit_byte
UNITS 1 dma_addr unit_page
UNITS 3 npages unit_page
LOCK2 &mm->mmap_lock
LOCK2 &prange->migrate_mutex
LOCK2 &svms->lock
HALF_LOCKED2 &process_info->lock
TYPE_LOCK (struct mm_struct)->mmap_lock
TYPE_LOCK (struct svm_range)->migrate_mutex
TYPE_LOCK (struct svm_range_list)->lock

drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_svm.c svm_range_dma_unmap() -> svm_range_dma_unmap_dev()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 1 dma_addr 1-u64max
PARAM_VALUE 2 offset 0
BUF_SIZE 0 dev 1616
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &process_info->lock
HALF_LOCKED2 &svms->lock