Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

drivers/gpu/drm/virtio/virtgpu_prime.c virtgpu_dma_buf_init_obj() -> virtio_gpu_cmd_resource_create_blob()

Type Parameter Key Value
PARAM_VALUE 0 vgdev 4096-ptr_max
PARAM_VALUE 1 bo 4096-ptr_max
PARAM_VALUE 1 bo->base.base._resv.fences 0
PARAM_VALUE 1 bo->base.base._resv.lock.base.dep_map->name 0-255
PARAM_VALUE 1 bo->base.base._resv.lock.base.magic 4096-ptr_max
PARAM_VALUE 1 bo->base.base._resv.lock.ctx 0
PARAM_VALUE 1 bo->base.base._resv.lock.ww_class 8825623990767841280
PARAM_VALUE 1 bo->base.base._resv.lock.ww_class->acquire_name 4096-ptr_max
PARAM_VALUE 1 bo->base.base._resv.lock.ww_class->is_wait_die 0-s32max
PARAM_VALUE 1 bo->base.base._resv.lock.ww_class->mutex_name 4096-ptr_max
PARAM_VALUE 1 bo->base.base.filp 0
PARAM_VALUE 1 bo->base.base.funcs 4729814806068948992
PARAM_VALUE 1 bo->base.base.gpuva.list.next 4096-ptr_max
PARAM_VALUE 1 bo->base.base.gpuva.list.next->next 4096-ptr_max
PARAM_VALUE 1 bo->base.base.gpuva.list.prev 4096-ptr_max
PARAM_VALUE 1 bo->base.base.gpuva.list.prev->next 4096-ptr_max
PARAM_VALUE 1 bo->base.base.gpuva.list.prev->prev 4096-ptr_max
PARAM_VALUE 1 bo->base.base.gpuva.lock.dep_map->name 0-255
PARAM_VALUE 1 bo->base.base.gpuva.lock.first_waiter 0
PARAM_VALUE 1 bo->base.base.gpuva.lock.magic 4096-ptr_max
PARAM_VALUE 1 bo->base.base.gpuva.lock.owner.counter 0
PARAM_VALUE 1 bo->base.base.handle_count 0
PARAM_VALUE 1 bo->base.base.import_attach 4096-ptr_max
PARAM_VALUE 1 bo->base.base.import_attach->dev 1-u64max
PARAM_VALUE 1 bo->base.base.import_attach->dmabuf 4096-ptr_max
PARAM_VALUE 1 bo->base.base.import_attach->importer_ops 8418988896761581568
PARAM_VALUE 1 bo->base.base.import_attach->importer_priv 4096-ptr_max
PARAM_VALUE 1 bo->base.base.import_attach->node.next 4096-ptr_max
PARAM_VALUE 1 bo->base.base.import_attach->node.prev 4096-ptr_max
PARAM_VALUE 1 bo->base.base.lru_node.next 4096-ptr_max
PARAM_VALUE 1 bo->base.base.lru_node.next->next 4096-ptr_max
PARAM_VALUE 1 bo->base.base.lru_node.prev 4096-ptr_max
PARAM_VALUE 1 bo->base.base.lru_node.prev->next 4096-ptr_max
PARAM_VALUE 1 bo->base.base.lru_node.prev->prev 4096-ptr_max
PARAM_VALUE 1 bo->base.base.refcount.refcount.refs.counter 1
PARAM_VALUE 1 bo->base.base.resv 1-u64max
PARAM_VALUE 1 bo->base.base.resv->fences 0
PARAM_VALUE 1 bo->base.base.resv->lock.base.magic 4096-ptr_max
PARAM_VALUE 1 bo->base.base.resv->lock.ctx 0
PARAM_VALUE 1 bo->base.base.resv->lock.ww_class 8825623990767841280
PARAM_VALUE 1 bo->base.base.vma_node.driver_private 0
PARAM_VALUE 1 bo->base.base.vma_node.vm_lock.magic 3736018669
PARAM_VALUE 1 bo->base.base.vma_node.vm_lock.owner (-1)
PARAM_VALUE 1 bo->base.base.vma_node.vm_lock.owner_cpu u32max
PARAM_VALUE 1 bo->base.base.vma_node.vm_node.color 0
PARAM_VALUE 1 bo->base.base.vma_node.vm_node.flags 0
PARAM_VALUE 1 bo->base.base.vma_node.vm_node.mm 0
PARAM_VALUE 1 bo->base.base.vma_node.vm_node.size 0
PARAM_VALUE 1 bo->base.base.vma_node.vm_node.stack 0
PARAM_VALUE 1 bo->base.base.vma_node.vm_node.start 0
PARAM_VALUE 1 bo->restore_node.next 4096-ptr_max
PARAM_VALUE 1 bo->restore_node.next->next 4096-ptr_max
PARAM_VALUE 1 bo->restore_node.prev 4096-ptr_max
PARAM_VALUE 1 bo->restore_node.prev->next 4096-ptr_max
PARAM_VALUE 1 bo->restore_node.prev->prev 4096-ptr_max
PARAM_VALUE 1 bo->sgt 4096-ptr_max
PARAM_VALUE 1 bo->sgt->nents 0
PARAM_VALUE 1 bo->sgt->orig_nents 0
PARAM_VALUE 2 params 4074145364257976320
PARAM_VALUE 2 params->bind 0
PARAM_VALUE 2 params->blob 1
PARAM_VALUE 2 params->blob_flags 2
PARAM_VALUE 2 params->blob_id 0
PARAM_VALUE 2 params->blob_mem 1
PARAM_VALUE 2 params->ctx_id 0
PARAM_VALUE 2 params->depth 0
PARAM_VALUE 2 params->dumb 0
PARAM_VALUE 2 params->flags 0
PARAM_VALUE 2 params->format 0
PARAM_VALUE 2 params->height 0
PARAM_VALUE 2 params->target 0
PARAM_VALUE 2 params->virgl 0
PARAM_VALUE 2 params->width 0
PARAM_VALUE 3 ents 16,4096-ptr_max
PARAM_VALUE 4 nents 0
BUF_SIZE 0 vgdev s32min-(-2),1-s32max
BUF_SIZE 0 vgdev s32min-(-2),1-s32max
BUF_SIZE 1 bo 912
DATA_SOURCE 1 bo $1
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 1 bo->sgt->nents
NO_OVERFLOW_SIMPLE 4 nents
UNITS 0 vgdev unit_byte
LOCK2 &dev->object_name_lock
LOCK2 &file_priv->prime.lock
LOCK2 resv
HALF_LOCKED2 &p->mutex
TYPE_LOCK (struct drm_device)->object_name_lock
TYPE_LOCK (struct drm_prime_file_private)->lock

drivers/gpu/drm/virtio/virtgpu_prime.c virtgpu_dma_buf_obj_resubmit() -> virtio_gpu_cmd_resource_create_blob()

Type Parameter Key Value
PARAM_VALUE 0 vgdev 4096-ptr_max
PARAM_VALUE 0 vgdev->hibernated 0
PARAM_VALUE 0 vgdev->obj_restore_lock.dep_map->name 0-255
PARAM_VALUE 0 vgdev->obj_restore_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 vgdev->obj_restore_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 vgdev->obj_restore_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 vgdev->obj_restore_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 vgdev->obj_restore_lock.wait_lock.owner (-1)
PARAM_VALUE 0 vgdev->obj_restore_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 vgdev->vdev->config->find_vqs 4096-ptr_max
PARAM_VALUE 1 bo 4096-ptr_max
PARAM_VALUE 1 bo->base.base.import_attach 1-u64max
PARAM_VALUE 1 bo->sgt 4096-ptr_max
PARAM_VALUE 2 params 4096-ptr_max
PARAM_VALUE 3 ents 1-18446744073709551614
BUF_SIZE 0 vgdev s32min-(-2),1-s32max
BUF_SIZE 0 vgdev s32min-(-2),1-s32max
BUF_SIZE 3 ents 16
DATA_SOURCE 0 vgdev $0
DATA_SOURCE 1 bo $1
DATA_SOURCE 3 ents r _kvmalloc_array_node_noprof
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 1 bo->sgt->nents
NO_OVERFLOW_SIMPLE 4 nents
UNITS 0 vgdev unit_byte
LOCK2 0 &vgdev->obj_restore_lock
TYPE_LOCK (struct virtio_gpu_device)->obj_restore_lock

drivers/gpu/drm/virtio/virtgpu_vram.c virtio_gpu_vram_create() -> virtio_gpu_cmd_resource_create_blob()

Type Parameter Key Value
PARAM_VALUE 0 vgdev 4096-ptr_max
PARAM_VALUE 0 vgdev->ddev->vma_offset_manager 4096-ptr_max
PARAM_VALUE 0 vgdev->has_resource_blob 1
PARAM_VALUE 1 bo 4096-ptr_max
PARAM_VALUE 1 bo->base.base._resv.lock.base.magic 4096-ptr_max
PARAM_VALUE 1 bo->base.base._resv.lock.ww_class 8825623990767841280
PARAM_VALUE 1 bo->base.base.dev 4096-ptr_max
PARAM_VALUE 1 bo->base.base.funcs 3472529715224936448
PARAM_VALUE 1 bo->base.base.gpuva.lock.magic 4096-ptr_max
PARAM_VALUE 1 bo->base.base.lru_node.next 4096-ptr_max
PARAM_VALUE 1 bo->base.base.lru_node.prev 4096-ptr_max
PARAM_VALUE 1 bo->base.base.refcount.refcount.refs.counter 1
PARAM_VALUE 1 bo->base.base.resv 1-u64max
PARAM_VALUE 1 bo->base.base.vma_node.vm_lock.magic 3736018669
PARAM_VALUE 1 bo->base.base.vma_node.vm_lock.owner (-1)
PARAM_VALUE 1 bo->base.base.vma_node.vm_lock.owner_cpu u32max
PARAM_VALUE 1 bo->base.base.vma_node.vm_node.hole_size 0-1
PARAM_VALUE 1 bo->base.base.vma_node.vm_node.hole_stack.next 4096-ptr_max
PARAM_VALUE 1 bo->base.base.vma_node.vm_node.hole_stack.prev 4096-ptr_max
PARAM_VALUE 1 bo->base.base.vma_node.vm_node.mm 4096-ptr_max
PARAM_VALUE 1 bo->base.base.vma_node.vm_node.rb_hole_size.__rb_parent_color 1
PARAM_VALUE 1 bo->base.base.vma_node.vm_node.rb_hole_size.rb_left 4096-ptr_max
PARAM_VALUE 1 bo->base.base.vma_node.vm_node.rb_hole_size.rb_right 4096-ptr_max
PARAM_VALUE 1 bo->base.base.vma_node.vm_node.subtree_max_hole 1
PARAM_VALUE 1 bo->restore_node.next 4096-ptr_max
PARAM_VALUE 1 bo->restore_node.prev 4096-ptr_max
PARAM_VALUE 2 params 6870114730447532032
PARAM_VALUE 2 params->bind 0
PARAM_VALUE 2 params->blob 1
PARAM_VALUE 2 params->blob_flags 0-6
PARAM_VALUE 2 params->blob_mem 1-3
PARAM_VALUE 2 params->depth 0
PARAM_VALUE 2 params->dumb 0
PARAM_VALUE 2 params->flags 0
PARAM_VALUE 2 params->format 0
PARAM_VALUE 2 params->height 0
PARAM_VALUE 2 params->size 0,4096-u64max
PARAM_VALUE 2 params->target 0
PARAM_VALUE 2 params->virgl 0
PARAM_VALUE 2 params->width 0
PARAM_VALUE 3 ents 0
PARAM_VALUE 4 nents 0
BUF_SIZE 0 vgdev s32min-(-2),1-s32max
BUF_SIZE 0 vgdev s32min-(-2),1-s32max
DATA_SOURCE 0 vgdev $0
DATA_SOURCE 2 params $1
BIT_INFO 2 params->size 0x0,0xfffffffffffff000
NOCHECK_CALL
USER_DATA 2 params->blob_flags 0-6[u]
USER_DATA 2 params->blob_hints 0-u32max[u]
USER_DATA 2 params->blob_id 0-u64max[u]
USER_DATA 2 params->blob_mem 1-3[u]
USER_DATA 2 params->size 0,4096-u64max[c]
UNITS 0 vgdev unit_byte

drivers/gpu/drm/virtio/virtgpu_object.c virtio_gpu_object_create() -> virtio_gpu_cmd_resource_create_blob()

Type Parameter Key Value
PARAM_VALUE 0 vgdev 4096-ptr_max
PARAM_VALUE 0 vgdev->ddev 4096-ptr_max
PARAM_VALUE 0 vgdev->ddev->driver 4096-ptr_max
PARAM_VALUE 0 vgdev->ddev->huge_mnt->mnt_sb->s_cop->empty_dir 0,86,661756434209751040,4392966320616476672,5234023279986843648
PARAM_VALUE 0 vgdev->ddev->huge_mnt->mnt_sb->s_cop->get_context 0,706,17350455714160640,4513809449498124288,5149251875611672576
PARAM_VALUE 0 vgdev->ddev->huge_mnt->mnt_sb->s_cop->inode_info_offs 1632,1808,2632,2648,2704,2712
PARAM_VALUE 0 vgdev->ddev->huge_mnt->mnt_sb->s_cop->set_context 0,67,317457138841939968,3250154607523569664,5979066299606671360
PARAM_VALUE 0 vgdev->ddev->huge_mnt->mnt_sb->s_fs_info->mpol->refcnt.counter s32min-s32max
PARAM_VALUE 0 vgdev->ddev->huge_mnt->mnt_sb->s_fs_info->stat_lock.owner (-1)
PARAM_VALUE 0 vgdev->ddev->huge_mnt->mnt_sb->s_fs_info->stat_lock.owner_cpu 4294967295
PARAM_VALUE 0 vgdev->ddev->huge_mnt->mnt_sb->s_fs_info->stat_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 *vgdev->ddev->huge_mnt->mnt_sb->s_fs_info->stat_lock.owner (-4611686018427387904)-4611686018427387903
PARAM_VALUE 1 bo 4096-ptr_max
PARAM_VALUE 1 bo->base.base.dev->dev->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 1 bo->base.base.filp->f_mapping->host->i_mapping 4096-ptr_max
PARAM_VALUE 1 bo->base.base.resv->fences->max_fences 0-4294967295
PARAM_VALUE 1 bo->base.base.resv->lock.base.dep_map->name 0-255
PARAM_VALUE 1 bo->base.base.resv->lock.base.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 1 bo->base.base.resv->lock.base.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 1 bo->base.base.resv->lock.base.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 1 bo->base.base.resv->lock.base.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 1 bo->base.base.resv->lock.base.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 1 bo->base.base.resv->lock.ctx 0
PARAM_VALUE 1 bo->base.pages_mark_accessed_on_put 0
PARAM_VALUE 1 bo->base.pages_mark_dirty_on_put 0
PARAM_VALUE 1 bo->base.sgt 4096-ptr_max
PARAM_VALUE 1 bo->base.sgt->nents 0-s32max
PARAM_VALUE 1 bo->restore_node.next 4096-ptr_max
PARAM_VALUE 1 bo->restore_node.next->next 4096-ptr_max
PARAM_VALUE 1 bo->restore_node.prev 4096-ptr_max
PARAM_VALUE 1 bo->restore_node.prev->next 4096-ptr_max
PARAM_VALUE 1 bo->restore_node.prev->prev 4096-ptr_max
PARAM_VALUE 2 params 4743625328666308608,6870114730447532032
PARAM_VALUE 2 params->array_size 0
PARAM_VALUE 2 params->bind 0
PARAM_VALUE 2 params->blob 1
PARAM_VALUE 2 params->blob_flags 0-6
PARAM_VALUE 2 params->blob_mem 0-3
PARAM_VALUE 2 params->depth 0
PARAM_VALUE 2 params->flags 0
PARAM_VALUE 2 params->format 0,2
PARAM_VALUE 2 params->last_level 0
PARAM_VALUE 2 params->nr_samples 0
PARAM_VALUE 2 params->target 0
PARAM_VALUE 2 params->virgl 0
PARAM_VALUE 3 ents 16,4096-ptr_max
BUF_SIZE 0 vgdev s32min-(-2),1-s32max
BUF_SIZE 0 vgdev s32min-(-2),1-s32max
CAPPED_DATA 1 bo->base.base.resv->fences 1
DATA_SOURCE 0 vgdev $0
DATA_SOURCE 2 params $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 2 params->blob_flags 0-6[u]
USER_DATA 2 params->blob_hints 0-u32max[u]
USER_DATA 2 params->blob_id 0-u64max[u]
USER_DATA 2 params->blob_mem 2-3[u]
USER_DATA 2 params->height 1-s32max[c]
USER_DATA 2 params->width 1-u32max[u]
NO_OVERFLOW_SIMPLE 2 params->height
NO_OVERFLOW_SIMPLE 2 params->width
UNITS 0 vgdev unit_byte

drivers/gpu/drm/virtio/virtgpu_object.c virtio_gpu_object_restore_all() -> virtio_gpu_cmd_resource_create_blob()

Type Parameter Key Value
PARAM_VALUE 0 vgdev 4096-ptr_max
PARAM_VALUE 0 vgdev->hibernated 0
PARAM_VALUE 0 vgdev->obj_restore_lock.dep_map->name 0-255
PARAM_VALUE 0 vgdev->obj_restore_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 vgdev->obj_restore_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 vgdev->obj_restore_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 vgdev->obj_restore_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 vgdev->obj_restore_lock.wait_lock.owner (-1)
PARAM_VALUE 0 vgdev->obj_restore_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 vgdev->vdev->config->find_vqs 4096-ptr_max
PARAM_VALUE 1 bo 4096-ptr_max
PARAM_VALUE 1 bo->base.base.dev->dev->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 1 bo->base.base.import_attach 0
PARAM_VALUE 1 bo->base.base.resv->fences->max_fences 0-4294967295
PARAM_VALUE 1 bo->base.base.resv->lock.base.dep_map->name 0-255
PARAM_VALUE 1 bo->base.base.resv->lock.base.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 1 bo->base.base.resv->lock.base.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 1 bo->base.base.resv->lock.base.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 1 bo->base.base.resv->lock.base.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 1 bo->base.base.resv->lock.base.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 1 bo->base.base.resv->lock.ctx 0
PARAM_VALUE 1 bo->base.sgt 4096-ptr_max
PARAM_VALUE 1 bo->base.sgt->nents 0-s32max
PARAM_VALUE 1 bo->params.blob 1
PARAM_VALUE 2 params 4096-ptr_max
PARAM_VALUE 2 params->blob 1
PARAM_VALUE 3 ents 16,4096-ptr_max
BUF_SIZE 0 vgdev s32min-(-2),1-s32max
BUF_SIZE 0 vgdev s32min-(-2),1-s32max
CAPPED_DATA 0 &vgdev->obj_restore_list 1
CAPPED_DATA 0 &vgdev->obj_restore_lock 1
CAPPED_DATA 1 bo->base.base.resv->fences 1
CAPPED_DATA 1 &bo->restore_node 1
DATA_SOURCE 0 vgdev $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 vgdev unit_byte
LOCK2 0 &vgdev->obj_restore_lock
TYPE_LOCK (struct virtio_gpu_device)->obj_restore_lock