Documented in 1 files:

Defined in 1 files as a member:

Defined in 2 files as a function:

Referenced in 4 files:

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