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_get_vram_page() -> svm_range_bo_ref()

Type Parameter Key Value
PARAM_VALUE 0 svm_bo 1-u64max
PARAM_VALUE 0 svm_bo->eviction_fence->mm->mmap_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 svm_bo->eviction_fence->mm->mmap_lock.first_waiter->type 0-1
PARAM_VALUE 0 svm_bo->eviction_fence->mm->notifier_subscriptions->invalidate_seq 0-s64max
CAPPED_DATA 0 svm_bo 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
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_clone() -> svm_range_bo_ref()

Type Parameter Key Value
PARAM_VALUE 0 svm_bo 1-u64max
LOCK2 &mm->mmap_lock
LOCK2 &process_info->lock
LOCK2 &svms->lock
HALF_LOCKED2 &p->mutex
TYPE_LOCK (struct amdkfd_process_info)->lock
TYPE_LOCK (struct mm_struct)->mmap_lock
TYPE_LOCK (struct svm_range_list)->lock

drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_svm.c svm_range_split_nodes() -> svm_range_bo_ref()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &old->lock
HALF_LOCKED2 &parent->lock
HALF_LOCKED2 &prange->lock
HALF_LOCKED2 &process_info->lock
HALF_LOCKED2 &svms->lock