Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

drivers/gpu/drm/drm_gem.c drm_gem_object_release() -> drm_gem_private_object_fini()

Type Parameter Key Value
PARAM_VALUE 0 obj 4096-ptr_max
PARAM_VALUE 0 obj->_resv.lock.ww_class->acquire_name 0,4096-ptr_max
PARAM_VALUE 0 obj->_resv.lock.ww_class->is_wait_die 0-s32max
PARAM_VALUE 0 obj->_resv.lock.ww_class->mutex_name 0,4096-ptr_max
PARAM_VALUE 0 obj->dev->anon_inode->i_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 obj->dev->anon_inode->i_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 obj->filp 0,4096-ptr_max
PARAM_VALUE 0 obj->filp->f_cred->process_keyring->user->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 obj->filp->f_cred->process_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 obj->filp->f_cred->process_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 obj->filp->f_cred->rcu.func 1-u64max
PARAM_VALUE 0 obj->filp->f_cred->request_key_auth->user->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 obj->filp->f_cred->request_key_auth->user->qnbytes s32min-s32max
PARAM_VALUE 0 obj->filp->f_cred->request_key_auth->user->qnkeys s32min-s32max
PARAM_VALUE 0 obj->filp->f_cred->session_keyring->user->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 obj->filp->f_cred->session_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 obj->filp->f_cred->session_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 obj->filp->f_cred->thread_keyring->user->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 obj->filp->f_cred->thread_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 obj->filp->f_cred->thread_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 obj->filp->f_cred->ucounts->ns->work.entry.next 4096-ptr_max
PARAM_VALUE 0 obj->filp->f_cred->user->uidhash_node->next->pprev 1-u64max
PARAM_VALUE 0 obj->filp->f_cred->user->uidhash_node.next->pprev 1-u64max
PARAM_VALUE 0 obj->filp->f_cred->user_ns->work.entry.next 4096-ptr_max
PARAM_VALUE 0 obj->filp->f_cred->user_ns->work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 obj->filp->f_task_work.func 5179756662909861888
PARAM_VALUE 0 obj->filp->f_task_work.next 0-7661163036167163903,7661163036167163905-u64max
PARAM_VALUE 0 obj->funcs->free 0,4096-ptr_max
BUF_SIZE 0 obj (-1),704
BUF_SIZE 0 obj (-1),704
BUF_SIZE 0 obj->funcs (-1),120
CAPPED_DATA 0 obj->filp 1
DATA_SOURCE 0 obj $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 obj->filp->f_mode 33554432,34078720-571342855[c]
USER_DATA 0 obj->size 0-u64max[c]
USER_DATA 0 obj->vma_node.vm_node.size 1-s32max[c]
USER_DATA 0 obj->vma_node.vm_node.start 0-s32max[c]
NO_OVERFLOW_SIMPLE 0 obj->dev->mode_config.num_colorop
NO_OVERFLOW_SIMPLE 0 obj->dev->mode_config.num_crtc
NO_OVERFLOW_SIMPLE 0 obj->dev->mode_config.num_total_plane
NO_OVERFLOW_SIMPLE 0 obj->dev->num_crtcs
HALF_LOCKED2 &dev->object_name_lock
HALF_LOCKED2 &drm->object_name_lock
HALF_LOCKED2 &file_priv->prime.lock
HALF_LOCKED2 robj

drivers/gpu/drm/drm_gem_shmem_helper.c __drm_gem_shmem_init() -> drm_gem_private_object_fini()

Type Parameter Key Value
PARAM_VALUE 0 obj 4096-ptr_max
PARAM_VALUE 0 obj->_resv.fences 0
PARAM_VALUE 0 obj->_resv.lock.base.dep_map->name 0-255
PARAM_VALUE 0 obj->_resv.lock.base.first_waiter 0
PARAM_VALUE 0 obj->_resv.lock.base.magic 4096-ptr_max
PARAM_VALUE 0 obj->_resv.lock.base.osq.tail.counter 0
PARAM_VALUE 0 obj->_resv.lock.base.owner.counter 0
PARAM_VALUE 0 obj->_resv.lock.ctx 0
PARAM_VALUE 0 obj->_resv.lock.ww_class 8825623990767841280
PARAM_VALUE 0 obj->_resv.lock.ww_class->acquire_name 4096-ptr_max
PARAM_VALUE 0 obj->_resv.lock.ww_class->is_wait_die 0-s32max
PARAM_VALUE 0 obj->_resv.lock.ww_class->mutex_name 4096-ptr_max
PARAM_VALUE 0 obj->dev 4096-ptr_max
PARAM_VALUE 0 obj->filp 0
PARAM_VALUE 0 obj->funcs 1-u64max
PARAM_VALUE 0 obj->gpuva.list.next 4096-ptr_max
PARAM_VALUE 0 obj->gpuva.list.next->next 4096-ptr_max
PARAM_VALUE 0 obj->gpuva.list.prev 4096-ptr_max
PARAM_VALUE 0 obj->gpuva.list.prev->next 4096-ptr_max
PARAM_VALUE 0 obj->gpuva.list.prev->prev 4096-ptr_max
PARAM_VALUE 0 obj->gpuva.lock.dep_map->name 0-255
PARAM_VALUE 0 obj->gpuva.lock.first_waiter 0
PARAM_VALUE 0 obj->gpuva.lock.magic 4096-ptr_max
PARAM_VALUE 0 obj->gpuva.lock.osq.tail.counter 0
PARAM_VALUE 0 obj->gpuva.lock.owner.counter 0
PARAM_VALUE 0 obj->handle_count 0
PARAM_VALUE 0 obj->lru_node.next 4096-ptr_max
PARAM_VALUE 0 obj->lru_node.next->next 4096-ptr_max
PARAM_VALUE 0 obj->lru_node.prev 4096-ptr_max
PARAM_VALUE 0 obj->lru_node.prev->next 4096-ptr_max
PARAM_VALUE 0 obj->lru_node.prev->prev 4096-ptr_max
PARAM_VALUE 0 obj->refcount.refcount.refs.counter 1
PARAM_VALUE 0 obj->resv 1-u64max
PARAM_VALUE 0 obj->resv->fences 0
PARAM_VALUE 0 obj->resv->lock.base.first_waiter 0
PARAM_VALUE 0 obj->resv->lock.base.magic 4096-ptr_max
PARAM_VALUE 0 obj->resv->lock.base.osq.tail.counter 0
PARAM_VALUE 0 obj->resv->lock.base.owner.counter 0
PARAM_VALUE 0 obj->resv->lock.ctx 0
PARAM_VALUE 0 obj->resv->lock.ww_class 8825623990767841280
PARAM_VALUE 0 obj->vma_node.driver_private 0
PARAM_VALUE 0 obj->vma_node.vm_files.rb_node 0
PARAM_VALUE 0 obj->vma_node.vm_lock.magic 3736018669
PARAM_VALUE 0 obj->vma_node.vm_lock.owner (-1)
PARAM_VALUE 0 obj->vma_node.vm_lock.owner_cpu u32max
PARAM_VALUE 0 obj->vma_node.vm_lock.raw_lock.wlocked 0
PARAM_VALUE 0 obj->vma_node.vm_node.__subtree_last 0
PARAM_VALUE 0 obj->vma_node.vm_node.color 0
PARAM_VALUE 0 obj->vma_node.vm_node.flags 0
PARAM_VALUE 0 obj->vma_node.vm_node.hole_size 0
PARAM_VALUE 0 obj->vma_node.vm_node.hole_stack.next 0
PARAM_VALUE 0 obj->vma_node.vm_node.hole_stack.prev 0
PARAM_VALUE 0 obj->vma_node.vm_node.mm 0
PARAM_VALUE 0 obj->vma_node.vm_node.node_list.next 0
PARAM_VALUE 0 obj->vma_node.vm_node.node_list.prev 0
PARAM_VALUE 0 obj->vma_node.vm_node.rb.rb_left 0
PARAM_VALUE 0 obj->vma_node.vm_node.rb.rb_right 0
PARAM_VALUE 0 obj->vma_node.vm_node.size 0
PARAM_VALUE 0 obj->vma_node.vm_node.stack 0
PARAM_VALUE 0 obj->vma_node.vm_node.start 0
PARAM_VALUE 0 obj->vma_node.vm_node.subtree_max_hole 0
BUF_SIZE 0 obj 704
BUF_SIZE 0 obj->funcs (-1),120
MEM_ZERO 0 &obj->vma_node
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 obj->size 0-u64max[c]
NO_OVERFLOW_SIMPLE 0 obj->dev->num_crtcs

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

Type Parameter Key Value
PARAM_VALUE 0 obj 214590983316226048
PARAM_VALUE 0 obj->_resv.fences 0
PARAM_VALUE 0 obj->_resv.lock.base.magic 4096-ptr_max
PARAM_VALUE 0 obj->_resv.lock.base.owner.counter 0
PARAM_VALUE 0 obj->_resv.lock.ww_class 8825623990767841280
PARAM_VALUE 0 obj->dev 0,4096-u64max
PARAM_VALUE 0 obj->dma_buf 0
PARAM_VALUE 0 obj->filp 0
PARAM_VALUE 0 obj->funcs 0
PARAM_VALUE 0 obj->gpuva.lock.magic 4096-ptr_max
PARAM_VALUE 0 obj->gpuva.lock.owner.counter 0
PARAM_VALUE 0 obj->lru 0
PARAM_VALUE 0 obj->lru_node.next 4096-ptr_max
PARAM_VALUE 0 obj->lru_node.prev 4096-ptr_max
PARAM_VALUE 0 obj->name 0
PARAM_VALUE 0 obj->resv 4096-ptr_max
PARAM_VALUE 0 obj->size 4096
PARAM_VALUE 0 obj->vma_node.vm_lock.magic 3736018669
PARAM_VALUE 0 obj->vma_node.vm_lock.owner (-1)
PARAM_VALUE 0 obj->vma_node.vm_lock.owner_cpu u32max
NOCHECK_CALL

drivers/gpu/drm/tests/drm_exec_test.c test_prepare_array() -> drm_gem_private_object_fini()

Type Parameter Key Value
PARAM_VALUE 0 obj 4096-ptr_max
PARAM_VALUE 0 obj->_resv.fences 0
PARAM_VALUE 0 obj->_resv.lock.base.dep_map->name 0-255
PARAM_VALUE 0 obj->_resv.lock.base.first_waiter 0
PARAM_VALUE 0 obj->_resv.lock.base.magic 4096-ptr_max
PARAM_VALUE 0 obj->_resv.lock.base.osq.tail.counter 0
PARAM_VALUE 0 obj->_resv.lock.base.owner.counter 0
PARAM_VALUE 0 obj->_resv.lock.ctx 0
PARAM_VALUE 0 obj->_resv.lock.ww_class 8825623990767841280
PARAM_VALUE 0 obj->_resv.lock.ww_class->is_wait_die 0-s32max
PARAM_VALUE 0 obj->_resv.lock.ww_class->mutex_name 0,4096-ptr_max
PARAM_VALUE 0 obj->dev 0,4096-u64max
PARAM_VALUE 0 obj->filp 0
PARAM_VALUE 0 obj->gpuva.lock.dep_map->name 0-255
PARAM_VALUE 0 obj->gpuva.lock.first_waiter 0
PARAM_VALUE 0 obj->gpuva.lock.magic 4096-ptr_max
PARAM_VALUE 0 obj->gpuva.lock.osq.tail.counter 0
PARAM_VALUE 0 obj->gpuva.lock.owner.counter 0
PARAM_VALUE 0 obj->handle_count 0
PARAM_VALUE 0 obj->lru_node.next 4096-ptr_max
PARAM_VALUE 0 obj->lru_node.next->next 4096-ptr_max
PARAM_VALUE 0 obj->lru_node.prev 4096-ptr_max
PARAM_VALUE 0 obj->lru_node.prev->next 4096-ptr_max
PARAM_VALUE 0 obj->lru_node.prev->prev 4096-ptr_max
PARAM_VALUE 0 obj->refcount.refcount.refs.counter 1
PARAM_VALUE 0 obj->resv 4096-ptr_max
PARAM_VALUE 0 obj->resv->fences 0
PARAM_VALUE 0 obj->resv->lock.base.first_waiter 0
PARAM_VALUE 0 obj->resv->lock.base.magic 4096-ptr_max
PARAM_VALUE 0 obj->resv->lock.base.osq.tail.counter 0
PARAM_VALUE 0 obj->resv->lock.base.owner.counter 0
PARAM_VALUE 0 obj->resv->lock.ctx 0
PARAM_VALUE 0 obj->resv->lock.ww_class 8825623990767841280
PARAM_VALUE 0 obj->size 4096
PARAM_VALUE 0 obj->vma_node.driver_private 0
PARAM_VALUE 0 obj->vma_node.vm_lock.magic 3736018669
PARAM_VALUE 0 obj->vma_node.vm_lock.owner (-1)
PARAM_VALUE 0 obj->vma_node.vm_lock.owner_cpu u32max
PARAM_VALUE 0 obj->vma_node.vm_node.__subtree_last 0
PARAM_VALUE 0 obj->vma_node.vm_node.color 0
PARAM_VALUE 0 obj->vma_node.vm_node.flags 0
PARAM_VALUE 0 obj->vma_node.vm_node.hole_size 0
PARAM_VALUE 0 obj->vma_node.vm_node.hole_stack.next 0
PARAM_VALUE 0 obj->vma_node.vm_node.hole_stack.prev 0
PARAM_VALUE 0 obj->vma_node.vm_node.mm 0
PARAM_VALUE 0 obj->vma_node.vm_node.node_list.next 0
PARAM_VALUE 0 obj->vma_node.vm_node.node_list.prev 0
PARAM_VALUE 0 obj->vma_node.vm_node.rb.rb_left 0
PARAM_VALUE 0 obj->vma_node.vm_node.rb.rb_right 0
PARAM_VALUE 0 obj->vma_node.vm_node.size 0
PARAM_VALUE 0 obj->vma_node.vm_node.stack 0
PARAM_VALUE 0 obj->vma_node.vm_node.start 0
BUF_SIZE 0 obj 704
DATA_SOURCE 0 obj r kunit_kzalloc
MEM_ZERO 0 obj
MEM_ZERO 0 &obj->vma_node
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 obj->dev->num_crtcs

drivers/gpu/drm/tests/drm_exec_test.c test_prepare_array() -> drm_gem_private_object_fini()

Type Parameter Key Value
PARAM_VALUE 0 obj 4096-ptr_max
PARAM_VALUE 0 obj->_resv.fences 0
PARAM_VALUE 0 obj->_resv.lock.base.dep_map->name 0-255
PARAM_VALUE 0 obj->_resv.lock.base.first_waiter 0
PARAM_VALUE 0 obj->_resv.lock.base.magic 4096-ptr_max
PARAM_VALUE 0 obj->_resv.lock.base.osq.tail.counter 0
PARAM_VALUE 0 obj->_resv.lock.base.owner.counter 0
PARAM_VALUE 0 obj->_resv.lock.ctx 0
PARAM_VALUE 0 obj->_resv.lock.ww_class 8825623990767841280
PARAM_VALUE 0 obj->_resv.lock.ww_class->is_wait_die 0-s32max
PARAM_VALUE 0 obj->_resv.lock.ww_class->mutex_name 0,4096-ptr_max
PARAM_VALUE 0 obj->dev 0,4096-u64max
PARAM_VALUE 0 obj->filp 0
PARAM_VALUE 0 obj->gpuva.lock.dep_map->name 0-255
PARAM_VALUE 0 obj->gpuva.lock.first_waiter 0
PARAM_VALUE 0 obj->gpuva.lock.magic 4096-ptr_max
PARAM_VALUE 0 obj->gpuva.lock.osq.tail.counter 0
PARAM_VALUE 0 obj->gpuva.lock.owner.counter 0
PARAM_VALUE 0 obj->handle_count 0
PARAM_VALUE 0 obj->lru_node.next 4096-ptr_max
PARAM_VALUE 0 obj->lru_node.next->next 4096-ptr_max
PARAM_VALUE 0 obj->lru_node.prev 4096-ptr_max
PARAM_VALUE 0 obj->lru_node.prev->next 4096-ptr_max
PARAM_VALUE 0 obj->lru_node.prev->prev 4096-ptr_max
PARAM_VALUE 0 obj->refcount.refcount.refs.counter 1
PARAM_VALUE 0 obj->resv 4096-ptr_max
PARAM_VALUE 0 obj->resv->fences 0
PARAM_VALUE 0 obj->resv->lock.base.first_waiter 0
PARAM_VALUE 0 obj->resv->lock.base.magic 4096-ptr_max
PARAM_VALUE 0 obj->resv->lock.base.osq.tail.counter 0
PARAM_VALUE 0 obj->resv->lock.base.owner.counter 0
PARAM_VALUE 0 obj->resv->lock.ctx 0
PARAM_VALUE 0 obj->resv->lock.ww_class 8825623990767841280
PARAM_VALUE 0 obj->size 4096
PARAM_VALUE 0 obj->vma_node.driver_private 0
PARAM_VALUE 0 obj->vma_node.vm_lock.magic 3736018669
PARAM_VALUE 0 obj->vma_node.vm_lock.owner (-1)
PARAM_VALUE 0 obj->vma_node.vm_lock.owner_cpu u32max
PARAM_VALUE 0 obj->vma_node.vm_node.__subtree_last 0
PARAM_VALUE 0 obj->vma_node.vm_node.color 0
PARAM_VALUE 0 obj->vma_node.vm_node.flags 0
PARAM_VALUE 0 obj->vma_node.vm_node.hole_size 0
PARAM_VALUE 0 obj->vma_node.vm_node.hole_stack.next 0
PARAM_VALUE 0 obj->vma_node.vm_node.hole_stack.prev 0
PARAM_VALUE 0 obj->vma_node.vm_node.mm 0
PARAM_VALUE 0 obj->vma_node.vm_node.node_list.next 0
PARAM_VALUE 0 obj->vma_node.vm_node.node_list.prev 0
PARAM_VALUE 0 obj->vma_node.vm_node.rb.rb_left 0
PARAM_VALUE 0 obj->vma_node.vm_node.rb.rb_right 0
PARAM_VALUE 0 obj->vma_node.vm_node.size 0
PARAM_VALUE 0 obj->vma_node.vm_node.stack 0
PARAM_VALUE 0 obj->vma_node.vm_node.start 0
BUF_SIZE 0 obj 704
DATA_SOURCE 0 obj r kunit_kzalloc
MEM_ZERO 0 obj
MEM_ZERO 0 &obj->vma_node
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 obj->dev->num_crtcs