Documented in 1 files:
Defined in 1 files as a function:
Referenced in 1 files:
Smatch caller information:
drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_svm.c svm_range_split_head() -> svm_range_split()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | prange | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->child_list.next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->child_list.next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->child_list.prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->child_list.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->child_list.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->deferred_list.next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->deferred_list.next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->deferred_list.prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->deferred_list.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->deferred_list.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->invalid.counter | 0 |
| PARAM_VALUE | 0 | prange->list.next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->list.next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->list.prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->list.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->list.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | prange->lock.first_waiter | 0 |
| PARAM_VALUE | 0 | prange->lock.magic | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->lock.osq.tail.counter | 0 |
| PARAM_VALUE | 0 | prange->lock.owner.counter | 0 |
| PARAM_VALUE | 0 | prange->migrate_mutex.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | prange->migrate_mutex.first_waiter | 0 |
| PARAM_VALUE | 0 | prange->migrate_mutex.magic | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->migrate_mutex.osq.tail.counter | 0 |
| PARAM_VALUE | 0 | prange->migrate_mutex.owner.counter | 0 |
| PARAM_VALUE | 0 | prange->svm_bo_list.next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->svm_bo_list.next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->svm_bo_list.prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->svm_bo_list.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->svm_bo_list.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->update_list.next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->update_list.next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->update_list.prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->update_list.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->update_list.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->validate_timestamp | 0 |
| PARAM_VALUE | 1 | start | 1-u64max |
| PARAM_VALUE | 3 | new | 1327622802025631744 |
| PARAM_VALUE | 3 | *new | 0 |
| BUF_SIZE | 0 | prange | 1176 |
| BUF_SIZE | 0 | prange | 1176 |
| CAPPED_DATA | 1 | start | 1 |
| CAPPED_DATA | 1 | start | 1 |
| DATA_SOURCE | 0 | prange | $0 |
| DATA_SOURCE | 1 | start | $1 |
| NOSPEC | 1 | start | |
| NOSPEC | 1 | start | |
| USER_DATA | 1 | start | 1-9007199254740990[c] |
| NO_OVERFLOW_SIMPLE | 0 | prange->offset | |
| UNITS | 1 | start | unit_byte |
| 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_tail() -> svm_range_split()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | prange | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->child_list.next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->child_list.next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->child_list.prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->child_list.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->child_list.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->deferred_list.next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->deferred_list.next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->deferred_list.prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->deferred_list.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->deferred_list.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->invalid.counter | 0 |
| PARAM_VALUE | 0 | prange->list.next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->list.next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->list.prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->list.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->list.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | prange->lock.first_waiter | 0 |
| PARAM_VALUE | 0 | prange->lock.magic | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->lock.osq.tail.counter | 0 |
| PARAM_VALUE | 0 | prange->lock.owner.counter | 0 |
| PARAM_VALUE | 0 | prange->migrate_mutex.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | prange->migrate_mutex.first_waiter | 0 |
| PARAM_VALUE | 0 | prange->migrate_mutex.magic | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->migrate_mutex.osq.tail.counter | 0 |
| PARAM_VALUE | 0 | prange->migrate_mutex.owner.counter | 0 |
| PARAM_VALUE | 0 | prange->svm_bo_list.next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->svm_bo_list.next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->svm_bo_list.prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->svm_bo_list.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->svm_bo_list.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->update_list.next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->update_list.next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->update_list.prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->update_list.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->update_list.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->validate_timestamp | 0 |
| PARAM_VALUE | 2 | last | 0-18446744073709551614 |
| PARAM_VALUE | 3 | new | 4551926625378557952 |
| PARAM_VALUE | 3 | *new | 0 |
| BUF_SIZE | 0 | prange | 1176 |
| BUF_SIZE | 0 | prange | 1176 |
| CAPPED_DATA | 2 | last | 1 |
| CAPPED_DATA | 2 | last | 1 |
| DATA_SOURCE | 0 | prange | $0 |
| DATA_SOURCE | 2 | last | $1 |
| NOSPEC | 0 | prange->last | |
| NOSPEC | 0 | prange->start | |
| NOSPEC | 1 | start | |
| NOSPEC | 1 | start | |
| USER_DATA | 0 | prange->last | 0-s32max[c] |
| USER_DATA | 0 | prange->npages | 1-s32max |
| USER_DATA | 0 | prange->start | 1-4503599627370495[c] |
| USER_DATA | 1 | start | 1-4503599627370495[c] |
| USER_DATA | 2 | last | 0-s32max[c] |
| NO_OVERFLOW_SIMPLE | 0 | prange->offset | |
| UNITS | 2 | last | unit_byte |
| 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_unmap_split() -> svm_range_split()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | prange | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | prange->lock.first_waiter | 0,4096-ptr_max |
| PARAM_VALUE | 0 | prange->lock.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 0 | prange->lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | prange->start | 0-4503599627370494 |
| PARAM_VALUE | 0 | prange->work_item.op | 0,2-u32max |
| PARAM_VALUE | 1 | start | 0-4503599627370494 |
| PARAM_VALUE | 2 | last | 0-4503599627370494 |
| PARAM_VALUE | 3 | new | 4716408420119212032 |
| PARAM_VALUE | 3 | *new | 4096-ptr_max |
| CAPPED_DATA | 0 | prange | 1 |
| CAPPED_DATA | 0 | prange->start | 1 |
| CAPPED_DATA | 1 | start | 1 |
| CAPPED_DATA | 1 | start | 1 |
| CAPPED_DATA | 2 | last | 1 |
| DATA_SOURCE | 0 | prange | $1 |
| PARAM_COMPARE | 0 | prange->last | > $0->start |
| PARAM_COMPARE | 1 | start | < $0->last |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 2 | last | 0-2147483646[c] |
| UNITS | 1 | start | unit_page |
| UNITS | 2 | last | unit_page |
| LOCK2 | &parent->lock | ||
| LOCK2 | 0 | &prange->lock | |
| HALF_LOCKED2 | &ctx->map_changing_lock | ||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | global &ksm_thread_mutex |
drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_svm.c svm_range_unmap_split() -> svm_range_split()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | prange | 4096-ptr_max |
| PARAM_VALUE | 0 | prange->last | 1-u64max |
| PARAM_VALUE | 0 | prange->lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 1 | start | 1-4503599627370496 |
| PARAM_VALUE | 2 | last | 1-u64max |
| PARAM_VALUE | 3 | new | 3350870119385640960 |
| PARAM_VALUE | 3 | *new | 4096-ptr_max |
| CAPPED_DATA | 1 | start | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | prange->npages | 1-9007199254740990 |
| USER_DATA | 0 | prange->start | 0-9007199254740990[c] |
| USER_DATA | 1 | start | 1-2147483648[c] |
| NO_OVERFLOW_SIMPLE | 0 | prange->offset | |
| UNITS | 1 | start | unit_page |
| UNITS | 2 | last | unit_page |
| LOCK2 | &parent->lock | ||
| LOCK2 | &prange->lock | ||
| HALF_LOCKED2 | &ctx->map_changing_lock | ||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | global &ksm_thread_mutex |