Documented in 1 files:
Defined in 1 files as a member:
Defined in 2 files as a function:
- drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c, line 1062 (as a function)
- ipc/sem.c, line 949 (as a function)
Referenced in 4 files:
- drivers/gpu/drm/amd/amdkfd/kfd_debug.c, line 316
- drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
- drivers/gpu/drm/amd/amdkfd/kfd_process_queue_manager.c
- ipc/sem.c
Smatch caller information:
ipc/sem.c do_smart_update() -> update_queue()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dqm | 4096-ptr_max |
| PARAM_VALUE | 0 | dqm->sem_perm.deleted | 0 |
| PARAM_VALUE | 1 | q | (-1) |
| PARAM_VALUE | 2 | minfo | 2201228888095379456,3538838307248259072,5846733852203089920,7098068547685789696 |
| PARAM_VALUE | 2 | minfo->first | 1 |
| PARAM_VALUE | 2 | minfo->lastp | 4096-ptr_max |
| CAPPED_DATA | 0 | dqm->sem_nsems | 1 |
| CAPPED_DATA | 0 | &dqm->pending_alter | 1 |
| DATA_SOURCE | 0 | dqm | $0 |
| DATA_SOURCE | 2 | minfo | $4 |
| PARAM_COMPARE | 0 | &dqm->pending_alter | != $0->pending_alter.next |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read | ||
| LOCK2 | 0 | dqm |
ipc/sem.c do_smart_update() -> update_queue()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dqm | 4096-ptr_max |
| PARAM_VALUE | 0 | dqm->pending_alter.next | 4096-ptr_max |
| PARAM_VALUE | 0 | dqm->sem_nsems | 1-s32max |
| PARAM_VALUE | 0 | dqm->sem_perm.deleted | 0 |
| PARAM_VALUE | 0 | dqm->use_global_lock | 10 |
| PARAM_VALUE | 1 | q | 0-s32max |
| PARAM_VALUE | 2 | minfo | 2201228888095379456,3538838307248259072,7098068547685789696 |
| PARAM_VALUE | 2 | minfo->first | 1 |
| PARAM_VALUE | 2 | minfo->lastp | 4096-ptr_max |
| CAPPED_DATA | 0 | dqm->sem_nsems | 1 |
| CAPPED_DATA | 0 | &dqm->pending_alter | 1 |
| CAPPED_DATA | 1 | q | 1 |
| DATA_SOURCE | 0 | dqm | $0 |
| DATA_SOURCE | 2 | minfo | $4 |
| PARAM_COMPARE | 0 | &dqm->pending_alter | == $0->pending_alter.next |
| PARAM_COMPARE | 1 | q | < $0->sem_nsems |
| CONSTRAINT | 1 | q | <3015 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read | ||
| LOCK2 | 0 | dqm |
ipc/sem.c do_smart_update() -> update_queue()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dqm | 4096-ptr_max |
| PARAM_VALUE | 0 | dqm->pending_alter.next | 4096-ptr_max |
| PARAM_VALUE | 0 | dqm->sem_nsems | 1-s32max |
| PARAM_VALUE | 0 | dqm->sem_perm.deleted | 0 |
| PARAM_VALUE | 1 | q | 0-u16max |
| PARAM_VALUE | 2 | minfo | 5846733852203089920 |
| PARAM_VALUE | 2 | minfo->first | 1 |
| PARAM_VALUE | 2 | minfo->lastp | 4096-ptr_max |
| CAPPED_DATA | 0 | dqm->sem_nsems | 1 |
| CAPPED_DATA | 0 | &dqm->pending_alter | 1 |
| DATA_SOURCE | 0 | dqm | $0 |
| DATA_SOURCE | 2 | minfo | $4 |
| PARAM_COMPARE | 0 | &dqm->pending_alter | == $0->pending_alter.next |
| RX_PATH | |||
| LOCK2 | rcu_read | ||
| LOCK2 | 0 | dqm |
drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_process_queue_manager.c pqm_set_gws() -> (struct device_queue_manager_ops)->update_queue()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dqm | 4096-ptr_max |
| PARAM_VALUE | 1 | q | 4096-ptr_max |
| PARAM_VALUE | 1 | q->device | 4096-ptr_max |
| PARAM_VALUE | 1 | q->device->adev | 4096-ptr_max |
| PARAM_VALUE | 1 | q->device->dqm | 4096-ptr_max |
| PARAM_VALUE | 1 | q->device->kfd | 4096-ptr_max |
| PARAM_VALUE | 1 | q->gws | 0,4096-ptr_max,(-12) |
| PARAM_VALUE | 1 | q->gws->bo | 4096-ptr_max |
| PARAM_VALUE | 1 | q->gws->bo->tbo.base.resv->lock.base.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | q->gws->bo->tbo.base.resv->lock.base.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 1 | q->gws->bo->tbo.base.resv->lock.base.first_waiter->list.prev->prev | 5159360019465732096 |
| PARAM_VALUE | 2 | minfo | 954229214171136 |
| PARAM_VALUE | 2 | minfo->cu_mask.count | 0 |
| PARAM_VALUE | 2 | minfo->cu_mask.ptr | 0 |
| PARAM_VALUE | 2 | minfo->update_flag | 0,4 |
| CONTAINER | 0 | *(-16-0+0) | $(-1) |
| CONTAINER | 1 | *(-16-0-240-280+0) | $(-1) |
| LOCK2 | &p->mutex | ||
| TYPE_LOCK | (struct kfd_process)->mutex |
drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_process_queue_manager.c pqm_update_mqd() -> (struct device_queue_manager_ops)->update_queue()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dqm | 4096-ptr_max |
| PARAM_VALUE | 1 | q | 4096-ptr_max |
| PARAM_VALUE | 1 | q->device | 4096-ptr_max |
| PARAM_VALUE | 1 | q->device->dqm | 4096-ptr_max |
| PARAM_VALUE | 2 | minfo | 1213153490697756672,8847535859932168192 |
| PARAM_VALUE | 2 | minfo->cu_mask.count | 0-1024 |
| PARAM_VALUE | 2 | minfo->cu_mask.ptr | 0-ptr_max |
| PARAM_VALUE | 2 | minfo->update_flag | 0,5-6 |
| CAPPED_DATA | 2 | minfo->cu_mask.count | 1 |
| DATA_SOURCE | 2 | minfo | $2 |
| CONTAINER | 0 | *(-16-0+0) | $(-1) |
| CONTAINER | 1 | *(-16-0-240-280+0) | $(-1) |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 2 | minfo->cu_mask.count | 1-1024[c] |
| USER_PTR | 2 | minfo->cu_mask.ptr | |
| HALF_LOCKED2 | &dqm->lock_hidden | ||
| HALF_LOCKED2 | &p->mutex |
drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_process_queue_manager.c pqm_update_queue_properties() -> (struct device_queue_manager_ops)->update_queue()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dqm | 4096-ptr_max |
| PARAM_VALUE | 1 | q | 4096-ptr_max |
| PARAM_VALUE | 1 | q->device | 4096-ptr_max |
| PARAM_VALUE | 1 | q->device->dqm | 4096-ptr_max |
| PARAM_VALUE | 1 | q->properties.pm4_target_xcc | 0-255 |
| PARAM_VALUE | 1 | q->properties.priority | 0-15 |
| PARAM_VALUE | 1 | q->properties.queue_percent | 0-100 |
| PARAM_VALUE | 1 | q->properties.queue_size | 1024-u32max |
| PARAM_VALUE | 2 | minfo | 0 |
| CONTAINER | 0 | *(-16-0+0) | $(-1) |
| CONTAINER | 1 | *(-16-0-240-280+0) | $(-1) |
| USER_DATA | 1 | q->properties.pm4_target_xcc | 0-255[c] |
| USER_DATA | 1 | q->properties.priority | 0-15[u] |
| USER_DATA | 1 | q->properties.queue_address | 0-u64max[c] |
| USER_DATA | 1 | q->properties.queue_size | 1024-u32max[u] |
| LOCK2 | &p->mutex | ||
| TYPE_LOCK | (struct kfd_process)->mutex |
drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_debug.c kfd_dbg_set_queue_workaround() -> (struct device_queue_manager_ops)->update_queue()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dqm | 4096-ptr_max |
| PARAM_VALUE | 1 | q | 4096-ptr_max |
| PARAM_VALUE | 1 | q->device | 4096-ptr_max |
| PARAM_VALUE | 1 | q->device->adev | 4096-ptr_max |
| PARAM_VALUE | 1 | q->device->dqm | 4096-ptr_max |
| PARAM_VALUE | 2 | minfo | 6456420622781878272 |
| PARAM_VALUE | 2 | minfo->cu_mask.count | 0 |
| PARAM_VALUE | 2 | minfo->cu_mask.ptr | 0 |
| PARAM_VALUE | 2 | minfo->update_flag | 1-2 |
| DATA_SOURCE | 1 | q | $0 |
| CONTAINER | 0 | *(-16-0+0) | $(-1) |
| CONTAINER | 1 | -16-0-240-280+0 | $(-1) |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &target->mutex |