Documented in 1 files:
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_to_ram() -> svm_migrate_vram_to_ram()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | prange | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->actual_loc | 1-u32max |
| PARAM_VALUE | 0 | prange->migrate_mutex.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | prange->migrate_mutex.first_waiter | 0,4096-ptr_max |
| PARAM_VALUE | 0 | prange->migrate_mutex.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 0 | prange->migrate_mutex.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | prange->migrate_mutex.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | prange->migrate_mutex.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | prange->migrate_mutex.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 0 | prange->start | 0-4503599627370495 |
| PARAM_VALUE | 4 | trigger | 2 |
| PARAM_VALUE | 5 | fault_page | 4096-ptr_max |
| PARAM_VALUE | 5 | fault_page->zone_device_data | 4096-ptr_max |
| CAPPED_DATA | 0 | prange->start | 1 |
| CAPPED_DATA | 0 | &prange->migrate_mutex | 1 |
| CAPPED_DATA | 2 | start_mgr | 1 |
| CAPPED_DATA | 2 | start_mgr | 1 |
| CAPPED_DATA | 3 | last_mgr | 1 |
| CAPPED_DATA | 3 | last_mgr | 1 |
| DATA_SOURCE | 0 | prange | r svm_range_from_addr |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 2 | start_mgr | 1-u64max[c] |
| UNITS | 1 | mm | unit_byte |
| UNITS | 5 | fault_page | unit_page |
| LOCK2 | &p->svms.lock | ||
| LOCK2 | 0 | &prange->migrate_mutex | |
| HALF_LOCKED2 | &mm->mmap_lock | ||
| TYPE_LOCK | (struct svm_range)->migrate_mutex | ||
| TYPE_LOCK | (struct svm_range_list)->lock |
drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_migrate.c svm_migrate_vram_to_vram() -> svm_migrate_vram_to_ram()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | prange | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->actual_loc | 1-u32max |
| PARAM_VALUE | 0 | prange->migrate_mutex.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | prange->migrate_mutex.first_waiter | 0,4096-ptr_max |
| PARAM_VALUE | 0 | prange->migrate_mutex.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 0 | prange->migrate_mutex.first_waiter->list.prev->prev | 5159360019465732096 |
| PARAM_VALUE | 0 | prange->migrate_mutex.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | prange->migrate_mutex.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | prange->migrate_mutex.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | prange->migrate_mutex.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 0 | prange->notifier.ops->invalidate | 0,4096-ptr_max |
| PARAM_VALUE | 0 | prange->notifier.ops->invalidate_finish | 0,2193403108630056960 |
| PARAM_VALUE | 0 | prange->notifier.ops->invalidate_start | 0,7606346720449052672 |
| PARAM_VALUE | 1 | mm | 4096-ptr_max |
| PARAM_VALUE | 1 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 1 | mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 4 | trigger | 0-1 |
| PARAM_VALUE | 5 | fault_page | 0 |
| DATA_SOURCE | 0 | prange | $0 |
| DATA_SOURCE | 1 | mm | $4 |
| DATA_SOURCE | 4 | trigger | $5 |
| HARD_MAX | 4 | trigger | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 1 | mm | unit_byte |
| LOCK2 | &svms->lock | ||
| LOCK2 | 0 | &prange->migrate_mutex | |
| LOCK2 | 1 | &mm->mmap_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_evict_svm_bo() -> svm_migrate_vram_to_ram()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | prange | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->svm_bo_list.next->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->svm_bo_list.prev->next | 4096-ptr_max |
| PARAM_VALUE | 1 | mm | 4096-ptr_max |
| PARAM_VALUE | 1 | mm->mm_users.counter | 0-s32max |
| PARAM_VALUE | 4 | trigger | 3 |
| PARAM_VALUE | 5 | fault_page | 0 |
| CAPPED_DATA | 0 | &prange->migrate_mutex | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | 0 | &prange->migrate_mutex | |
| LOCK2 | 1 | &mm->mmap_lock | |
| TYPE_LOCK | (struct mm_struct)->mmap_lock | ||
| TYPE_LOCK | (struct svm_range)->migrate_mutex |
drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_svm.c svm_range_restore_pages() -> svm_migrate_vram_to_ram()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | prange | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->actual_loc | 1-u32max |
| PARAM_VALUE | 0 | prange->lock.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 0 | prange->lock.first_waiter->list.prev->prev | 5159360019465732096 |
| PARAM_VALUE | 0 | prange->lock.first_waiter->task->blocked_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | prange->lock.first_waiter->task->blocked_lock.owner | (-1) |
| PARAM_VALUE | 0 | prange->lock.first_waiter->task->blocked_lock.owner_cpu | 4294967295 |
| PARAM_VALUE | 0 | prange->lock.first_waiter->task->blocked_lock.raw_lock.val.counter | s32min-s32max |
| PARAM_VALUE | 0 | prange->lock.first_waiter->task->usage.refs.counter | s32min-s32max |
| PARAM_VALUE | 0 | prange->migrate_mutex.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | prange->migrate_mutex.first_waiter | 0,4096-ptr_max |
| PARAM_VALUE | 0 | prange->migrate_mutex.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 0 | prange->migrate_mutex.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | prange->migrate_mutex.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | prange->migrate_mutex.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | prange->migrate_mutex.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 0 | prange->notifier.ops->invalidate | 0,4096-ptr_max |
| PARAM_VALUE | 0 | prange->notifier.ops->invalidate_finish | 0,2193403108630056960 |
| PARAM_VALUE | 0 | prange->notifier.ops->invalidate_start | 0,7606346720449052672 |
| PARAM_VALUE | 0 | prange->svm_bo->evicting | 0-1 |
| PARAM_VALUE | 0 | prange->svm_bo->eviction_fence->mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | prange->svm_bo->eviction_fence->mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | prange->svm_bo_list.next->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->svms | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->svms->deferred_list_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | mm | 4096-ptr_max |
| PARAM_VALUE | 1 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 1 | mm->mmap_lock.first_waiter->list.next | 2212933610777083904,2624917664208203776 |
| PARAM_VALUE | 1 | mm->mmap_lock.first_waiter->list.prev | 2212933610777083904,2624917664208203776 |
| PARAM_VALUE | 1 | mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 4 | trigger | 1 |
| PARAM_VALUE | 5 | fault_page | 0 |
| BUF_SIZE | 0 | prange | (-1),1176 |
| BUF_SIZE | 0 | prange | (-1),1176 |
| CAPPED_DATA | 0 | prange->preferred_loc | 1 |
| CAPPED_DATA | 0 | &prange->migrate_mutex | 1 |
| CAPPED_DATA | 3 | last_mgr | 1 |
| CAPPED_DATA | 3 | last_mgr | 1 |
| DATA_SOURCE | 1 | mm | r get_task_mm |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 2 | start_mgr | unit_page |
| LOCK2 | &svms->lock | ||
| LOCK2 | 0 | &prange->migrate_mutex | |
| LOCK2 | 1 | &mm->mmap_lock | |
| HALF_LOCKED2 | &pool->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_restore_pages() -> svm_migrate_vram_to_ram()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | prange | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->actual_loc | 1-u32max |
| PARAM_VALUE | 0 | prange->migrate_mutex.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | prange->migrate_mutex.first_waiter | 0,4096-ptr_max |
| PARAM_VALUE | 0 | prange->migrate_mutex.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 0 | prange->migrate_mutex.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | prange->migrate_mutex.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | prange->migrate_mutex.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | prange->migrate_mutex.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 0 | prange->notifier.ops->invalidate | 0,4096-ptr_max |
| PARAM_VALUE | 0 | prange->notifier.ops->invalidate_finish | 0,2193403108630056960 |
| PARAM_VALUE | 0 | prange->notifier.ops->invalidate_start | 0,7606346720449052672 |
| PARAM_VALUE | 0 | prange->svms | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->svms->deferred_list_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | mm | 4096-ptr_max |
| PARAM_VALUE | 1 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 1 | mm->mmap_lock.first_waiter->list.next | 2212933610777083904,2624917664208203776 |
| PARAM_VALUE | 1 | mm->mmap_lock.first_waiter->list.prev | 2212933610777083904,2624917664208203776 |
| PARAM_VALUE | 1 | mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 4 | trigger | 1 |
| PARAM_VALUE | 5 | fault_page | 0 |
| BUF_SIZE | 0 | prange | (-1),1176 |
| BUF_SIZE | 0 | prange | (-1),1176 |
| CAPPED_DATA | 0 | &prange->migrate_mutex | 1 |
| CAPPED_DATA | 3 | last_mgr | 1 |
| CAPPED_DATA | 3 | last_mgr | 1 |
| DATA_SOURCE | 1 | mm | r get_task_mm |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &svms->lock | ||
| LOCK2 | 0 | &prange->migrate_mutex | |
| LOCK2 | 1 | &mm->mmap_lock | |
| HALF_LOCKED2 | &pool->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_trigger_migration() -> svm_migrate_vram_to_ram()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | prange | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->actual_loc | 1-u32max |
| PARAM_VALUE | 0 | prange->migrate_mutex.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | prange->migrate_mutex.first_waiter | 0,4096-ptr_max |
| PARAM_VALUE | 0 | prange->migrate_mutex.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 0 | prange->migrate_mutex.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | prange->migrate_mutex.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | prange->migrate_mutex.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | prange->migrate_mutex.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 0 | prange->notifier.ops->invalidate | 0,4096-ptr_max |
| PARAM_VALUE | 0 | prange->notifier.ops->invalidate_finish | 0,2193403108630056960 |
| PARAM_VALUE | 0 | prange->notifier.ops->invalidate_start | 0,7606346720449052672 |
| PARAM_VALUE | 0 | prange->prefetch_loc | 0-4294967294 |
| PARAM_VALUE | 0 | prange->svm_bo->evicting | 0-1 |
| PARAM_VALUE | 1 | mm | 4096-ptr_max |
| PARAM_VALUE | 1 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 1 | mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | mm->mmap_lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 4 | trigger | 0 |
| PARAM_VALUE | 5 | fault_page | 0 |
| DATA_SOURCE | 0 | prange | $1 |
| DATA_SOURCE | 1 | mm | $0 |
| UNITS | 1 | mm | unit_byte |
| LOCK2 | &process_info->lock | ||
| LOCK2 | &svms->lock | ||
| LOCK2 | 0 | &prange->migrate_mutex | |
| LOCK2 | 1 | &mm->mmap_lock | |
| HALF_LOCKED2 | &p->mutex | ||
| TYPE_LOCK | (struct amdkfd_process_info)->lock | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock | ||
| TYPE_LOCK | (struct svm_range)->migrate_mutex | ||
| TYPE_LOCK | (struct svm_range_list)->lock |