Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 9 files:

Smatch caller information:

drivers/gpu/drm/vmwgfx/vmwgfx_shader.c vmw_dx_shader_add() -> vmw_resource_reference()

Type Parameter Key Value
LOCK2 &dev_priv->cmdbuf_mutex
TYPE_LOCK (struct vmw_private)->cmdbuf_mutex

drivers/gpu/drm/vmwgfx/vmwgfx_shader.c vmw_user_shader_alloc() -> vmw_resource_reference()

Type Parameter Key Value
PARAM_VALUE 0 res 4096-ptr_max
PARAM_VALUE 0 res->binding_head.next 4096-ptr_max
PARAM_VALUE 0 res->binding_head.next->next 4096-ptr_max
PARAM_VALUE 0 res->binding_head.prev 4096-ptr_max
PARAM_VALUE 0 res->binding_head.prev->next 4096-ptr_max
PARAM_VALUE 0 res->binding_head.prev->prev 4096-ptr_max
PARAM_VALUE 0 res->coherent 0
PARAM_VALUE 0 res->dev_priv 4096-ptr_max
PARAM_VALUE 0 res->dev_priv->active_display_unit 1-3
PARAM_VALUE 0 res->dev_priv->cman 0,4096-u64max
PARAM_VALUE 0 res->dev_priv->ctx.cmd_bounce_size 0,4096-9437184
PARAM_VALUE 0 res->dev_priv->ctx.ctx 1255665894879240192
PARAM_VALUE 0 res->dev_priv->fifo_mem 1-u64max
PARAM_VALUE 0 res->dev_priv->fifo_mem_size 0-u32max
PARAM_VALUE 0 res->dev_priv->initial_height 800-u32max
PARAM_VALUE 0 res->dev_priv->initial_width 1280-u32max
PARAM_VALUE 0 res->dev_priv->map_mode 0-2
PARAM_VALUE 0 res->dev_priv->max_mob_pages 0-1073741823
PARAM_VALUE 0 res->dev_priv->max_primary_mem 0-u32max
PARAM_VALUE 0 res->dev_priv->num_irq_vectors 0-s32max
PARAM_VALUE 0 res->dev_priv->otable_batch.num_otables 5-6
PARAM_VALUE 0 res->dev_priv->query_cid_valid 0-1
PARAM_VALUE 0 res->dev_priv->sm_type 0-4
PARAM_VALUE 0 res->dev_priv->suspend_state 0,4096-u64max
PARAM_VALUE 0 res->dirty 0
PARAM_VALUE 0 res->func 5939278544681062400
PARAM_VALUE 0 res->func->bind 0,4096-ptr_max
PARAM_VALUE 0 res->func->busy_domain 1,12,16
PARAM_VALUE 0 res->func->clean 0,3065452078881816576
PARAM_VALUE 0 res->func->commit_notify 0,1682044872431194112,3729810951064047616,4535903217348042752
PARAM_VALUE 0 res->func->create 0,4096-ptr_max
PARAM_VALUE 0 res->func->destroy 0,401417227587854336,1038115698417348608,1432348224792465408,2293511010382663680,4502131126800584704,6265106013210091520
PARAM_VALUE 0 res->func->dirty_alloc 0,8750671606448160768
PARAM_VALUE 0 res->func->dirty_free 0,6026621763090563072
PARAM_VALUE 0 res->func->dirty_prio 0-3
PARAM_VALUE 0 res->func->dirty_range_add 0,8478925847338905600
PARAM_VALUE 0 res->func->dirty_sync 0,3512896785430667264
PARAM_VALUE 0 res->func->domain 1,8,16
PARAM_VALUE 0 res->func->prio 0-1,3
PARAM_VALUE 0 res->func->res_type 0-7
PARAM_VALUE 0 res->func->type_name 4096-ptr_max
PARAM_VALUE 0 res->func->unbind 0,4096-ptr_max
PARAM_VALUE 0 res->guest_memory_dirty 0
PARAM_VALUE 0 res->guest_memory_size 0-u32max
PARAM_VALUE 0 res->hw_destroy 3701300685428232192
PARAM_VALUE 0 res->id (-1)
PARAM_VALUE 0 res->kref.refcount.refs.counter 1
PARAM_VALUE 0 res->lru_head.next 4096-ptr_max
PARAM_VALUE 0 res->lru_head.next->next 4096-ptr_max
PARAM_VALUE 0 res->lru_head.prev 4096-ptr_max
PARAM_VALUE 0 res->lru_head.prev->next 4096-ptr_max
PARAM_VALUE 0 res->lru_head.prev->prev 4096-ptr_max
PARAM_VALUE 0 res->res_dirty 0
PARAM_VALUE 0 res->res_free 7084243595283394560
PARAM_VALUE 0 res->used_prio 3
BUF_SIZE 0 res 152

drivers/gpu/drm/vmwgfx/vmwgfx_vkms.c vmw_surface_reference() -> vmw_resource_reference()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &du->vkms.crc_state_lock
HALF_LOCKED2 irq

drivers/gpu/drm/vmwgfx/vmwgfx_so.c vmw_view_add() -> vmw_resource_reference()

Type Parameter Key Value
DATA_SOURCE 0 res $2
LOCK2 &dev_priv->cmdbuf_mutex
TYPE_LOCK (struct vmw_private)->cmdbuf_mutex

drivers/gpu/drm/vmwgfx/vmwgfx_so.c vmw_view_add() -> vmw_resource_reference()

Type Parameter Key Value
LOCK2 &dev_priv->cmdbuf_mutex
TYPE_LOCK (struct vmw_private)->cmdbuf_mutex

drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf_res.c vmw_cmdbuf_res_add() -> vmw_resource_reference()

Type Parameter Key Value
PARAM_VALUE 0 res 4096-ptr_max
PARAM_VALUE 0 res->binding_head.next 4096-ptr_max
PARAM_VALUE 0 res->binding_head.next->next 4096-ptr_max
PARAM_VALUE 0 res->binding_head.prev 4096-ptr_max
PARAM_VALUE 0 res->binding_head.prev->next 4096-ptr_max
PARAM_VALUE 0 res->binding_head.prev->prev 4096-ptr_max
PARAM_VALUE 0 res->coherent 0
PARAM_VALUE 0 res->dev_priv 4096-ptr_max
PARAM_VALUE 0 res->dev_priv->active_display_unit 1-3
PARAM_VALUE 0 res->dev_priv->cman 0,4096-u64max
PARAM_VALUE 0 res->dev_priv->ctx.cmd_bounce_size 0,4096-9437184
PARAM_VALUE 0 res->dev_priv->ctx.ctx 1255665894879240192
PARAM_VALUE 0 res->dev_priv->fifo_mem 1-u64max
PARAM_VALUE 0 res->dev_priv->fifo_mem_size 0-u32max
PARAM_VALUE 0 res->dev_priv->initial_height 800-u32max
PARAM_VALUE 0 res->dev_priv->initial_width 1280-u32max
PARAM_VALUE 0 res->dev_priv->map_mode 0-2
PARAM_VALUE 0 res->dev_priv->max_mob_pages 0-1073741823
PARAM_VALUE 0 res->dev_priv->max_primary_mem 0-u32max
PARAM_VALUE 0 res->dev_priv->num_irq_vectors 0-s32max
PARAM_VALUE 0 res->dev_priv->otable_batch.num_otables 5-6
PARAM_VALUE 0 res->dev_priv->query_cid_valid 0-1
PARAM_VALUE 0 res->dev_priv->sm_type 0-4
PARAM_VALUE 0 res->dev_priv->suspend_state 0,4096-u64max
PARAM_VALUE 0 res->dirty 0
PARAM_VALUE 0 res->func 1337832223600676864,5939278544681062400,6432164345135841280,8232990455760797696
PARAM_VALUE 0 res->func->bind 0,4096-ptr_max
PARAM_VALUE 0 res->func->busy_domain 1,12,16
PARAM_VALUE 0 res->func->clean 0,3065452078881816576
PARAM_VALUE 0 res->func->commit_notify 0,1682044872431194112,3729810951064047616,4535903217348042752
PARAM_VALUE 0 res->func->create 0,4096-ptr_max
PARAM_VALUE 0 res->func->destroy 0,401417227587854336,1038115698417348608,1432348224792465408,2293511010382663680,4502131126800584704,6265106013210091520
PARAM_VALUE 0 res->func->dirty_alloc 0,8750671606448160768
PARAM_VALUE 0 res->func->dirty_free 0,6026621763090563072
PARAM_VALUE 0 res->func->dirty_prio 0-3
PARAM_VALUE 0 res->func->dirty_range_add 0,8478925847338905600
PARAM_VALUE 0 res->func->dirty_sync 0,3512896785430667264
PARAM_VALUE 0 res->func->domain 1,8,16
PARAM_VALUE 0 res->func->prio 0-1,3
PARAM_VALUE 0 res->func->res_type 0-7
PARAM_VALUE 0 res->func->type_name 4096-ptr_max
PARAM_VALUE 0 res->func->unbind 0,4096-ptr_max
PARAM_VALUE 0 res->guest_memory_bo 0,4096-ptr_max
PARAM_VALUE 0 res->guest_memory_bo->tbo.base.funcs->rss 0,7796836804503863296
PARAM_VALUE 0 res->guest_memory_bo->tbo.base.funcs->status 0,2206473683877605376,4732760284336451584,5734366281981706240,5836107275532460032,6072073946299289600,6713341571981008896
PARAM_VALUE 0 res->guest_memory_bo->tbo.bdev->dev_mapping->host->i_sb->s_cop->inode_info_offs 1632,1808,2632,2648,2712
PARAM_VALUE 0 res->guest_memory_bo->tbo.bdev->dev_mapping->host->i_sb->s_export_op->encode_fh 0,2,1398972869330624512,1616549510479982592,2037984473558433792,2776440803454029824,3228746867770966016,3502492669594062848,3526768263295340544,3559173554394271744,5000850239487131648,5583386343686406144,5817357685191483392-s64max
PARAM_VALUE 0 res->guest_memory_bo->tbo.bdev->dev_mapping->host->i_sb->s_export_op->get_parent 0,8931,264940071972966400,291591359766798336,565128213429456896,893189740598853632,1241177127089143808,1474696885321834496,1812477326828269568,1893665921928286208,2210088671756947456,2437012291923775488,2483979068402987008-s64max
PARAM_VALUE 0 res->guest_memory_bo->tbo.bdev->dev_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 res->guest_memory_bo->tbo.ttm->restore->alloced_page 0-s64max
PARAM_VALUE 0 res->guest_memory_bo->tbo.ttm->restore->alloced_pages 0-s64max
PARAM_VALUE 0 res->guest_memory_bo->tbo.ttm->restore->first_dma 0-s64max
PARAM_VALUE 0 res->guest_memory_bo->tbo.ttm->restore->order 0-4294967295
PARAM_VALUE 0 res->guest_memory_bo->tbo.ttm->restore->page_caching 0-4294967295
PARAM_VALUE 0 res->guest_memory_bo->tbo.ttm->restore->restored_pages 0-s64max
PARAM_VALUE 0 res->guest_memory_dirty 0
PARAM_VALUE 0 res->hw_destroy 0,3701300685428232192
PARAM_VALUE 0 res->id (-1)
PARAM_VALUE 0 res->kref.refcount.refs.counter 1
PARAM_VALUE 0 res->lru_head.next 4096-ptr_max
PARAM_VALUE 0 res->lru_head.next->next 4096-ptr_max
PARAM_VALUE 0 res->lru_head.prev 4096-ptr_max
PARAM_VALUE 0 res->lru_head.prev->next 4096-ptr_max
PARAM_VALUE 0 res->lru_head.prev->prev 4096-ptr_max
PARAM_VALUE 0 res->res_dirty 0
PARAM_VALUE 0 res->res_free 235626438826725376,5575823493479022592,6621581673067171840,6999821089495748608
PARAM_VALUE 0 res->used_prio 3
BUF_SIZE 0 res 152
DATA_SOURCE 0 res $3
LOCK2 &dev_priv->cmdbuf_mutex
TYPE_LOCK (struct vmw_private)->cmdbuf_mutex

drivers/gpu/drm/vmwgfx/vmwgfx_resource.c vmw_resource_evict_type() -> vmw_resource_reference()

Type Parameter Key Value
PARAM_VALUE 0 res 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &dev_priv->cmdbuf_mutex
LOCK2 &dev_priv->resource_lock
TYPE_LOCK (struct vmw_private)->cmdbuf_mutex
TYPE_LOCK (struct vmw_private)->resource_lock

drivers/gpu/drm/vmwgfx/vmwgfx_resource.c vmw_resource_validate() -> vmw_resource_reference()

Type Parameter Key Value
PARAM_VALUE 0 res 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &dev_priv->resource_lock
HALF_LOCKED2 &dev_priv->cmdbuf_mutex
TYPE_LOCK (struct vmw_private)->resource_lock

drivers/gpu/drm/vmwgfx/vmwgfx_resource.c vmw_user_resource_lookup_handle() -> vmw_resource_reference()

Type Parameter Key Value
PARAM_VALUE 0 res 4096-ptr_max
BUF_SIZE 0 res 152
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev->mode_config.mutex
HALF_LOCKED2 &dev_priv->cmdbuf_mutex

drivers/gpu/drm/vmwgfx/vmwgfx_simple_resource.c vmw_simple_resource_create_ioctl() -> vmw_resource_reference()

Type Parameter Key Value
PARAM_VALUE 0 res 4096-ptr_max
BUF_SIZE 0 res 152

drivers/gpu/drm/vmwgfx/vmwgfx_simple_resource.c vmw_simple_resource_lookup() -> vmw_resource_reference()

Type Parameter Key Value
PARAM_VALUE 0 res 4096-ptr_max

drivers/gpu/drm/vmwgfx/vmwgfx_context.c vmw_context_define() -> vmw_resource_reference()

Type Parameter Key Value
PARAM_VALUE 0 res 4096-ptr_max
PARAM_VALUE 0 res->binding_head.next 4096-ptr_max
PARAM_VALUE 0 res->binding_head.prev 4096-ptr_max
PARAM_VALUE 0 res->coherent 0
PARAM_VALUE 0 res->dirty 0
PARAM_VALUE 0 res->func 1959263264537276416,3996129421491695616,4259228067064877056
PARAM_VALUE 0 res->hw_destroy 5233433648453750784
PARAM_VALUE 0 res->id (-1)-255
PARAM_VALUE 0 res->kref.refcount.refs.counter 1
PARAM_VALUE 0 res->lru_head.next 4096-ptr_max
PARAM_VALUE 0 res->lru_head.prev 4096-ptr_max
PARAM_VALUE 0 res->used_prio 3

drivers/gpu/drm/vmwgfx/vmwgfx_surface.c vmw_gb_surface_define_internal() -> vmw_resource_reference()

Type Parameter Key Value
PARAM_VALUE 0 res 4096-ptr_max
PARAM_VALUE 0 res->func->dirty_alloc 0,8750671606448160768
PARAM_VALUE 0 res->guest_memory_bo 0,4096-ptr_max
PARAM_VALUE 0 res->guest_memory_bo->detached_resources.xa_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 res->guest_memory_bo->placement.num_placement 0-4294967295
PARAM_VALUE 0 res->guest_memory_bo->tbo.base._resv.lock.ww_class->is_wait_die 0-s32max
PARAM_VALUE 0 res->guest_memory_bo->tbo.base.funcs->rss 0,7796836804503863296
PARAM_VALUE 0 res->guest_memory_bo->tbo.base.funcs->status 0,2206473683877605376,4732760284336451584,5734366281981706240,5836107275532460032,6072073946299289600,6713341571981008896
PARAM_VALUE 0 res->guest_memory_bo->tbo.base.vma_node.vm_lock.magic 0-4294967295
PARAM_VALUE 0 res->guest_memory_bo->tbo.base.vma_node.vm_lock.owner_cpu 0-4294967295
PARAM_VALUE 0 res->guest_memory_bo->tbo.bdev->dev_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 res->guest_memory_bo->tbo.priority 0-4294967295
PARAM_VALUE 0 res->guest_memory_bo->tbo.ttm->caching 0-4294967295
PARAM_VALUE 0 res->guest_memory_bo->tbo.ttm->page_flags 0-4294967295
PARAM_VALUE 0 res->guest_memory_bo->tbo.type 0-4294967295
BUF_SIZE 0 res 152
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 res->guest_memory_bo->tbo.base.dev->mode_config.num_colorop
NO_OVERFLOW_SIMPLE 0 res->guest_memory_bo->tbo.base.dev->mode_config.num_crtc
NO_OVERFLOW_SIMPLE 0 res->guest_memory_bo->tbo.base.dev->mode_config.num_total_plane
NO_OVERFLOW_SIMPLE 0 res->guest_memory_bo->tbo.base.dev->num_crtcs

drivers/gpu/drm/vmwgfx/vmwgfx_surface.c vmw_surface_define_ioctl() -> vmw_resource_reference()

Type Parameter Key Value
PARAM_VALUE 0 res 4096-ptr_max
PARAM_VALUE 0 res->binding_head.next 4096-ptr_max
PARAM_VALUE 0 res->binding_head.prev 4096-ptr_max
PARAM_VALUE 0 res->coherent 0
PARAM_VALUE 0 res->dev_priv 4096-ptr_max
PARAM_VALUE 0 res->dirty 0
PARAM_VALUE 0 res->func 4096-ptr_max
PARAM_VALUE 0 res->guest_memory_size 0-u32max
PARAM_VALUE 0 res->hw_destroy 5568402545617756160
PARAM_VALUE 0 res->id (-1)
PARAM_VALUE 0 res->kref.refcount.refs.counter 1
PARAM_VALUE 0 res->lru_head.next 4096-ptr_max
PARAM_VALUE 0 res->lru_head.prev 4096-ptr_max
PARAM_VALUE 0 res->res_free 1-u64max
PARAM_VALUE 0 res->used_prio 3

drivers/gpu/drm/vmwgfx/vmwgfx_surface.c vmw_surface_reference() -> vmw_resource_reference()

Type Parameter Key Value
PARAM_VALUE 0 res 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &crtc->cursor->mutex
HALF_LOCKED2 &crtc->mutex

drivers/gpu/drm/vmwgfx/vmwgfx_streamoutput.c vmw_dx_streamoutput_add() -> vmw_resource_reference()

Type Parameter Key Value
LOCK2 &dev_priv->cmdbuf_mutex
TYPE_LOCK (struct vmw_private)->cmdbuf_mutex

drivers/gpu/drm/vmwgfx/vmwgfx_kms.c vmw_surface_reference() -> vmw_resource_reference()

Type Parameter Key Value
PARAM_VALUE 0 res 1-u64max
RX_PATH
TASK_NOT_RUNNING