Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 15 files:

Smatch caller information:

drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c amdgpu_cs_parser_bos() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 1894173549278507128
PARAM_VALUE 0 exec->contended 0
PARAM_VALUE 0 exec->flags 3
PARAM_VALUE 1 obj 4096-ptr_max
PARAM_VALUE 2 num_fences 9-12,14-2147483665
MEM_ZERO 0 exec
UNITS 2 num_fences unit_page

drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c amdgpu_cs_parser_bos() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 1894173549278507128
PARAM_VALUE 0 exec->contended 0
PARAM_VALUE 0 exec->flags 3
PARAM_VALUE 1 obj 96,4096-ptr_max
PARAM_VALUE 2 num_fences 9-12,14-2147483665
MEM_ZERO 0 exec
UNITS 2 num_fences unit_page

drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c amdgpu_vm_lock_individual() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 3973348386034331648
PARAM_VALUE 0 exec->contended 0
PARAM_VALUE 0 exec->flags 2
PARAM_VALUE 1 obj 4096-ptr_max
PARAM_VALUE 2 num_fences 9
DATA_SOURCE 0 exec $1
DATA_SOURCE 2 num_fences $2
HALF_LOCKED2 &pool->lock

drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c amdgpu_vm_lock_pd() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 4096-ptr_max
PARAM_VALUE 0 exec->contended 0
PARAM_VALUE 0 exec->flags 0-3
PARAM_VALUE 1 obj 4096-ptr_max
PARAM_VALUE 2 num_fences 2-7,9-2147483659
DATA_SOURCE 0 exec $1
RX_PATH
TASK_NOT_RUNNING
UNITS 2 num_fences unit_page
HALF_LOCKED2 &mem->lock
HALF_LOCKED2 &mem->process_info->lock
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &p->mutex
HALF_LOCKED2 &prange->migrate_mutex
HALF_LOCKED2 &process_info->lock
HALF_LOCKED2 &svms->lock

drivers/gpu/drm/msm/msm_gem_submit.c submit_lock_objects() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 4096-ptr_max
PARAM_VALUE 0 exec->contended 0
PARAM_VALUE 0 exec->flags 1
PARAM_VALUE 2 num_fences 1
LOCK2 &queue->lock
HALF_LOCKED2 (submit->vm)->r_obj->resv
TYPE_LOCK (struct msm_gpu_submitqueue)->lock

drivers/gpu/drm/radeon/radeon_gem.c radeon_gem_va_update_vm() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 6375080618045399040
PARAM_VALUE 0 exec->contended 0
PARAM_VALUE 0 exec->flags 1
PARAM_VALUE 1 obj 4096-ptr_max
PARAM_VALUE 2 num_fences 1
LOCK2 rbo->tbo.base.resv

drivers/gpu/drm/radeon/radeon_gem.c radeon_gem_va_update_vm() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 6375080618045399040
PARAM_VALUE 0 exec->contended 0
PARAM_VALUE 0 exec->flags 1
PARAM_VALUE 1 obj 4096-ptr_max
PARAM_VALUE 2 num_fences 1
LOCK2 rbo->tbo.base.resv

drivers/gpu/drm/drm_exec.c drm_exec_prepare_array() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 4096-ptr_max
PARAM_VALUE 0 exec->contended 0,4096-ptr_max,(-1)
PARAM_VALUE 0 exec->ticket.ww_class->acquire_name 0,4096-ptr_max
PARAM_VALUE 0 exec->ticket.ww_class->is_wait_die 0-s32max
PARAM_VALUE 0 exec->ticket.ww_class->mutex_name 0,4096-ptr_max
PARAM_VALUE 2 num_fences 0-1
DATA_SOURCE 0 exec $0
DATA_SOURCE 2 num_fences $3
NOSPEC 0 exec->max_objects
USER_DATA 0 exec->max_objects 1-131072[c]

drivers/gpu/drm/radeon/radeon_object.c radeon_bo_list_validate() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 2688560332286525536
PARAM_VALUE 0 exec->contended 0
PARAM_VALUE 0 exec->contended->resv->lock.base.dep_map->name 0-255
PARAM_VALUE 0 exec->contended->resv->lock.base.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 exec->contended->resv->lock.base.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 exec->contended->resv->lock.base.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 exec->contended->resv->lock.base.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 exec->contended->resv->lock.base.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 exec->contended->resv->lock.base.first_waiter->task->blocked_on 0
PARAM_VALUE 0 exec->contended->resv->lock.base.osq.tail.counter 0-s32max
PARAM_VALUE 0 exec->flags 1
PARAM_VALUE 0 exec->ticket.dep_map->name 0-255
PARAM_VALUE 0 exec->ticket.first_lock_dep_map->name 0-255
PARAM_VALUE 0 exec->ticket.ww_class->acquire_name 0,4096-ptr_max
PARAM_VALUE 0 exec->ticket.ww_class->is_wait_die 0-s32max
PARAM_VALUE 0 exec->ticket.ww_class->mutex_name 0,4096-ptr_max
PARAM_VALUE 1 obj 4096-ptr_max
PARAM_VALUE 2 num_fences 1
DATA_SOURCE 0 exec $1
MEM_ZERO 0 exec
LOCK2 &rdev->exclusive_lock
TYPE_LOCK (struct radeon_device)->exclusive_lock

drivers/gpu/drm/qxl/qxl_release.c qxl_release_reserve_list() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 4096-ptr_max
PARAM_VALUE 0 exec->contended 0
PARAM_VALUE 0 exec->flags 0-1
PARAM_VALUE 2 num_fences 1
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/drm/nouveau/nouveau_uvmm.c bind_lock_validate() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 8767389989685878784
PARAM_VALUE 0 exec->contended 0
PARAM_VALUE 0 exec->flags 2
PARAM_VALUE 0 exec->ticket.dep_map->name 0-255
PARAM_VALUE 0 exec->ticket.first_lock_dep_map->name 0-255
PARAM_VALUE 0 exec->ticket.ww_class->acquire_name 4096-ptr_max
PARAM_VALUE 0 exec->ticket.ww_class->is_wait_die 0-s32max
PARAM_VALUE 0 exec->ticket.ww_class->mutex_name 4096-ptr_max
PARAM_VALUE 1 obj 1-u64max
PARAM_VALUE 2 num_fences 1
BUF_SIZE 0 exec 192
DATA_SOURCE 0 exec $1
DATA_SOURCE 1 obj r op_gem_obj
DATA_SOURCE 2 num_fences $2
LOCK2 &sched->mutex
LOCK2 &uvmm->mutex
HALF_LOCKED2 &file_priv->driver_priv->mutex
TYPE_LOCK (struct nouveau_sched)->mutex
TYPE_LOCK (struct nouveau_uvmm)->mutex

drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c amdgpu_userq_bo_validate() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 3973348386034331648
PARAM_VALUE 0 exec->contended 0
PARAM_VALUE 0 exec->flags 2
PARAM_VALUE 1 obj 4096-ptr_max
PARAM_VALUE 2 num_fences 9
DATA_SOURCE 0 exec $1
HALF_LOCKED2 &pool->lock

drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c amdgpu_gem_object_close() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 2115488950255980544
PARAM_VALUE 0 exec->contended 0
PARAM_VALUE 0 exec->flags 2
PARAM_VALUE 0 exec->num_objects 0
PARAM_VALUE 0 exec->objects 0,16,4096-ptr_max
PARAM_VALUE 0 exec->prelocked 0
PARAM_VALUE 0 exec->ticket.acquired 0
PARAM_VALUE 0 exec->ticket.contending_lock 0
PARAM_VALUE 0 exec->ticket.deadlock_inject_countdown 0-15
PARAM_VALUE 0 exec->ticket.deadlock_inject_interval 1
PARAM_VALUE 0 exec->ticket.done_acquire 0
PARAM_VALUE 0 exec->ticket.wounded 0
PARAM_VALUE 0 exec->ticket.ww_class 8825623990767841280
PARAM_VALUE 1 obj 4096-ptr_max
PARAM_VALUE 2 num_fences 1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->object_name_lock

drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c amdgpu_gem_object_open() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 3454694963553497088
PARAM_VALUE 0 exec->contended 0
PARAM_VALUE 0 exec->flags 2
PARAM_VALUE 0 exec->num_objects 0
PARAM_VALUE 0 exec->objects 0,16,4096-ptr_max
PARAM_VALUE 0 exec->prelocked 0
PARAM_VALUE 0 exec->ticket.acquired 0
PARAM_VALUE 0 exec->ticket.contending_lock 0
PARAM_VALUE 0 exec->ticket.deadlock_inject_countdown 0-15
PARAM_VALUE 0 exec->ticket.deadlock_inject_interval 1
PARAM_VALUE 0 exec->ticket.done_acquire 0
PARAM_VALUE 0 exec->ticket.wounded 0
PARAM_VALUE 0 exec->ticket.ww_class 8825623990767841280
PARAM_VALUE 1 obj 4096-ptr_max
PARAM_VALUE 2 num_fences 9
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->object_name_lock
HALF_LOCKED2 &file_priv->driver_priv->mutex
HALF_LOCKED2 &file_priv->prime.lock
HALF_LOCKED2 &obj->dev->object_name_lock

drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c amdgpu_amdkfd_gpuvm_restore_process_bos() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 6956269716063203328
PARAM_VALUE 0 exec->contended 0
PARAM_VALUE 0 exec->flags 2
PARAM_VALUE 1 obj 4096-ptr_max
PARAM_VALUE 2 num_fences 1
BUF_SIZE 1 obj 704
RX_PATH
TASK_NOT_RUNNING
LOCK2 &process_info->lock
HALF_LOCKED2 global &kfd_processes_mutex
HALF_LOCKED2 global &kfd_processes_srcu
TYPE_LOCK (struct amdkfd_process_info)->lock

drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c reserve_bo_and_cond_vms() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 7289464868252459008,8775286299589054464
PARAM_VALUE 0 exec->contended 0
PARAM_VALUE 0 exec->flags 3
PARAM_VALUE 1 obj 4096-ptr_max
PARAM_VALUE 2 num_fences 1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mem->lock
HALF_LOCKED2 &p->mutex

drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c reserve_bo_and_vm() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 8503647982346326016
PARAM_VALUE 0 exec->contended 0
PARAM_VALUE 0 exec->flags 1
PARAM_VALUE 1 obj 4096-ptr_max
PARAM_VALUE 2 num_fences 1
LOCK2 &mem->lock
LOCK2 &mem->process_info->lock
LOCK2 &p->mutex
HALF_LOCKED2 &gobj->dev->object_name_lock
TYPE_LOCK (struct amdkfd_process_info)->lock
TYPE_LOCK (struct kfd_process)->mutex
TYPE_LOCK (struct kgd_mem)->lock

drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c validate_invalid_user_pages() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 6843458278317678592
PARAM_VALUE 0 exec->contended 0
PARAM_VALUE 0 exec->flags 0
PARAM_VALUE 1 obj 4096-ptr_max
PARAM_VALUE 2 num_fences 1
BUF_SIZE 1 obj 704
LOCK2 &process_info->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct amdkfd_process_info)->lock

drivers/gpu/drm/drm_gpuvm.c drm_gpuvm_sm_map_exec_lock() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 4993259228741820416
PARAM_VALUE 0 exec->contended 0
PARAM_VALUE 0 exec->ticket.dep_map->name 0-255
PARAM_VALUE 0 exec->ticket.first_lock_dep_map->name 0-255
PARAM_VALUE 0 exec->ticket.ww_class->acquire_name 4096-ptr_max
PARAM_VALUE 0 exec->ticket.ww_class->is_wait_die 0-s32max
PARAM_VALUE 0 exec->ticket.ww_class->mutex_name 4096-ptr_max
PARAM_VALUE 1 obj 1-u64max
PARAM_VALUE 2 num_fences 1
DATA_SOURCE 0 exec $1
DATA_SOURCE 2 num_fences $2
LOCK2 &queue->lock
HALF_LOCKED2 (job->vm)->r_obj->resv
TYPE_LOCK (struct msm_gpu_submitqueue)->lock

drivers/gpu/drm/drm_gpuvm.c exec_prepare_obj() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 4096-ptr_max
PARAM_VALUE 0 exec->ticket.ww_class->acquire_name 0,4096-ptr_max
PARAM_VALUE 0 exec->ticket.ww_class->is_wait_die 0-s32max
PARAM_VALUE 0 exec->ticket.ww_class->mutex_name 0,4096-ptr_max
PARAM_VALUE 1 obj->_resv.lock.ww_class->is_wait_die 0-1
PARAM_VALUE 2 num_fences 1-u32max
BUF_SIZE 0 exec (-1),192
BUF_SIZE 0 exec (-1),192
DATA_SOURCE 0 exec $0
DATA_SOURCE 1 obj $1
DATA_SOURCE 2 num_fences $2
NOSPEC 2 num_fences
PREEMPT_ADD
USER_DATA 0 exec->max_objects 1-131072[c]
USER_DATA 2 num_fences 1-s32max[c]
NO_OVERFLOW_SIMPLE 0 exec->contended->size
NO_OVERFLOW_SIMPLE 2 num_fences

drivers/gpu/drm/tests/drm_exec_test.c test_prepare() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 4541091022016839680
PARAM_VALUE 0 exec->contended 0
PARAM_VALUE 0 exec->flags 1
PARAM_VALUE 0 exec->num_objects 0
PARAM_VALUE 0 exec->objects 0,16,4096-ptr_max
PARAM_VALUE 0 exec->prelocked 0
PARAM_VALUE 0 exec->ticket.acquired 0
PARAM_VALUE 0 exec->ticket.contending_lock 0
PARAM_VALUE 0 exec->ticket.deadlock_inject_countdown 0-15
PARAM_VALUE 0 exec->ticket.deadlock_inject_interval 1
PARAM_VALUE 0 exec->ticket.done_acquire 0
PARAM_VALUE 0 exec->ticket.wounded 0
PARAM_VALUE 0 exec->ticket.ww_class 8825623990767841280
PARAM_VALUE 1 obj 214590983316226048
PARAM_VALUE 1 obj->_resv.lock.base.magic 4096-ptr_max
PARAM_VALUE 1 obj->_resv.lock.ww_class 8825623990767841280
PARAM_VALUE 1 obj->dev 0,4096-u64max
PARAM_VALUE 1 obj->dma_buf 0
PARAM_VALUE 1 obj->filp 0
PARAM_VALUE 1 obj->funcs 0
PARAM_VALUE 1 obj->gpuva.lock.magic 4096-ptr_max
PARAM_VALUE 1 obj->lru 0
PARAM_VALUE 1 obj->lru_node.next 4096-ptr_max
PARAM_VALUE 1 obj->lru_node.prev 4096-ptr_max
PARAM_VALUE 1 obj->name 0
PARAM_VALUE 1 obj->refcount.refcount.refs.counter 1
PARAM_VALUE 1 obj->resv 4096-ptr_max
PARAM_VALUE 1 obj->size 4096
PARAM_VALUE 1 obj->vma_node.vm_lock.magic 3736018669
PARAM_VALUE 1 obj->vma_node.vm_lock.owner (-1)
PARAM_VALUE 1 obj->vma_node.vm_lock.owner_cpu u32max
PARAM_VALUE 2 num_fences 1

drivers/gpu/drm/panthor/panthor_mmu.c panthor_vm_bind_job_prepare_resvs() -> drm_exec_prepare_obj()

Type Parameter Key Value
PARAM_VALUE 0 exec 2237035702311317544
PARAM_VALUE 0 exec->contended 0,4096-ptr_max
PARAM_VALUE 0 exec->contended->resv->lock->base.first_waiter->task->blocked_lock.owner (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 exec->contended->resv->lock.base.dep_map->name 0-255
PARAM_VALUE 0 exec->contended->resv->lock.base.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 exec->contended->resv->lock.base.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 exec->contended->resv->lock.base.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 exec->contended->resv->lock.base.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 exec->contended->resv->lock.base.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 exec->contended->resv->lock.base.first_waiter->task->blocked_on 0
PARAM_VALUE 0 exec->contended->resv->lock.base.osq.tail.counter 0-s32max
PARAM_VALUE 0 exec->flags 3
PARAM_VALUE 0 exec->ticket.contending_lock 0,4096-ptr_max
PARAM_VALUE 0 exec->ticket.deadlock_inject_countdown 0-3758096380,u32max
PARAM_VALUE 0 exec->ticket.deadlock_inject_interval 0-3758096380,u32max
PARAM_VALUE 0 exec->ticket.wounded 0-1
PARAM_VALUE 2 num_fences 1
DATA_SOURCE 0 exec $0
LOCK2 global &drm_unplug_srcu