Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 5 files:
- drivers/gpu/drm/virtio/virtgpu_gem.c
- drivers/gpu/drm/virtio/virtgpu_object.c, line 250
- drivers/gpu/drm/virtio/virtgpu_plane.c
- drivers/gpu/drm/virtio/virtgpu_prime.c, line 101
- drivers/gpu/drm/virtio/virtgpu_vram.c, line 177
Smatch caller information:
drivers/gpu/drm/virtio/virtgpu_prime.c virtio_gpu_resource_assign_uuid() -> virtio_gpu_array_add_obj()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | objs | 4096-ptr_max |
| PARAM_VALUE | 0 | objs->nents | 0 |
| PARAM_VALUE | 0 | objs->total | 1 |
| PARAM_VALUE | 1 | obj | 4096-ptr_max |
| BUF_SIZE | 0 | objs | 184-s32max |
| BUF_SIZE | 0 | objs | 184-s32max |
| DATA_SOURCE | 0 | objs | r virtio_gpu_array_alloc |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &dev->object_name_lock | ||
| HALF_LOCKED2 | &file_priv->prime.lock |
drivers/gpu/drm/virtio/virtgpu_plane.c virtio_gpu_cursor_plane_update() -> virtio_gpu_array_add_obj()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | objs | 4096-ptr_max |
| PARAM_VALUE | 0 | objs->nents | 0 |
| PARAM_VALUE | 0 | objs->total | 1 |
| BUF_SIZE | 0 | objs | 184-s32max |
| BUF_SIZE | 0 | objs | 184-s32max |
| DATA_SOURCE | 0 | objs | r virtio_gpu_array_alloc |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &vkms_output->lock | ||
| HALF_LOCKED2 | irq |
drivers/gpu/drm/virtio/virtgpu_plane.c virtio_gpu_panic_update_dumb_bo() -> virtio_gpu_array_add_obj()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | objs | 4096-ptr_max |
| PARAM_VALUE | 0 | objs->nents | 0 |
| PARAM_VALUE | 0 | objs->total | 1 |
| BUF_SIZE | 0 | objs | 176 |
| DATA_SOURCE | 0 | objs | r virtio_gpu_panic_array_alloc |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &(plane->dev)->mode_config.panic_lock | ||
| LOCK2 | flags | ||
| HALF_LOCKED2 | rcu_read |
drivers/gpu/drm/virtio/virtgpu_plane.c virtio_gpu_resource_flush() -> virtio_gpu_array_add_obj()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | objs | 4096-ptr_max |
| PARAM_VALUE | 0 | objs->nents | 0 |
| PARAM_VALUE | 0 | objs->total | 1 |
| BUF_SIZE | 0 | objs | 184-s32max |
| BUF_SIZE | 0 | objs | 184-s32max |
| DATA_SOURCE | 0 | objs | r virtio_gpu_array_alloc |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | irq |
drivers/gpu/drm/virtio/virtgpu_plane.c virtio_gpu_update_dumb_bo() -> virtio_gpu_array_add_obj()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | objs | 4096-ptr_max |
| PARAM_VALUE | 0 | objs->nents | 0 |
| PARAM_VALUE | 0 | objs->total | 1 |
| BUF_SIZE | 0 | objs | 184-s32max |
| BUF_SIZE | 0 | objs | 184-s32max |
| DATA_SOURCE | 0 | objs | r virtio_gpu_array_alloc |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | irq |
drivers/gpu/drm/virtio/virtgpu_gem.c virtio_gpu_gem_object_close() -> virtio_gpu_array_add_obj()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | objs | 4096-ptr_max |
| PARAM_VALUE | 0 | objs->nents | 0 |
| PARAM_VALUE | 0 | objs->total | 1 |
| PARAM_VALUE | 1 | obj | 4096-ptr_max |
| PARAM_VALUE | 1 | obj->dev | 4096-ptr_max |
| PARAM_VALUE | 1 | obj->dev->dev_private | 4096-ptr_max |
| PARAM_VALUE | 1 | obj->funcs | 4096-ptr_max |
| PARAM_VALUE | 1 | obj->funcs->close | 4096-ptr_max |
| BUF_SIZE | 0 | objs | 184-s32max |
| BUF_SIZE | 0 | objs | 184-s32max |
| DATA_SOURCE | 0 | objs | r virtio_gpu_array_alloc |
| DATA_SOURCE | 1 | obj | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &dev->object_name_lock |
drivers/gpu/drm/virtio/virtgpu_gem.c virtio_gpu_gem_object_open() -> virtio_gpu_array_add_obj()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | objs | 4096-ptr_max |
| PARAM_VALUE | 0 | objs->nents | 0 |
| PARAM_VALUE | 0 | objs->total | 1 |
| PARAM_VALUE | 1 | obj | 4096-ptr_max |
| PARAM_VALUE | 1 | obj->_resv.lock.ww_class->acquire_name | 0,4096-ptr_max |
| PARAM_VALUE | 1 | obj->_resv.lock.ww_class->is_wait_die | 0-s32max |
| PARAM_VALUE | 1 | obj->_resv.lock.ww_class->mutex_name | 0,4096-ptr_max |
| PARAM_VALUE | 1 | obj->dev | 4096-ptr_max |
| PARAM_VALUE | 1 | obj->dev->dev_private | 4096-ptr_max |
| PARAM_VALUE | 1 | obj->dev->object_name_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | obj->dev->object_name_lock.first_waiter->task->blocked_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | obj->dev->object_name_lock.first_waiter->task->blocked_lock.owner | (-1) |
| PARAM_VALUE | 1 | obj->dev->object_name_lock.first_waiter->task->blocked_lock.owner_cpu | 4294967295 |
| PARAM_VALUE | 1 | obj->dev->object_name_lock.first_waiter->task->blocked_lock.raw_lock.val.counter | s32min-s32max |
| PARAM_VALUE | 1 | obj->dev->object_name_lock.first_waiter->task->usage.refs.counter | s32min-s32max |
| PARAM_VALUE | 1 | obj->dev->object_name_lock.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | obj->funcs | 4096-ptr_max |
| PARAM_VALUE | 1 | obj->funcs->close | 0,4096-ptr_max |
| PARAM_VALUE | 1 | obj->funcs->evict | 0 |
| PARAM_VALUE | 1 | obj->funcs->export | 0,4096-ptr_max |
| PARAM_VALUE | 1 | obj->funcs->free | 0,4096-ptr_max |
| PARAM_VALUE | 1 | obj->funcs->get_sg_table | 0,4096-ptr_max |
| PARAM_VALUE | 1 | obj->funcs->mmap | 0,4096-ptr_max |
| PARAM_VALUE | 1 | obj->funcs->open | 4096-ptr_max |
| PARAM_VALUE | 1 | obj->funcs->pin | 0,4096-ptr_max |
| PARAM_VALUE | 1 | obj->funcs->print_info | 0,4096-ptr_max |
| PARAM_VALUE | 1 | obj->funcs->rss | 0,4096-ptr_max |
| PARAM_VALUE | 1 | obj->funcs->status | 0,2206473683877605376,4732760284336451584,5734366281981706240,5836107275532460032,6072073946299289600,6713341571981008896 |
| PARAM_VALUE | 1 | obj->funcs->unpin | 0,4096-ptr_max |
| PARAM_VALUE | 1 | obj->funcs->vm_ops | 0,4096-ptr_max |
| PARAM_VALUE | 1 | obj->funcs->vmap | 0,4096-ptr_max |
| PARAM_VALUE | 1 | obj->funcs->vunmap | 0,4096-ptr_max |
| PARAM_VALUE | 1 | obj->vma_node.vm_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | obj->vma_node.vm_lock.owner | (-1) |
| PARAM_VALUE | 1 | obj->vma_node.vm_lock.owner_cpu | u32max |
| PARAM_VALUE | 1 | obj->vma_node.vm_lock.raw_lock.wlocked | 0 |
| BUF_SIZE | 0 | objs | 184-s32max |
| BUF_SIZE | 0 | objs | 184-s32max |
| BUF_SIZE | 1 | obj | (-1),1-4064 |
| BUF_SIZE | 1 | obj | (-1),1-4064 |
| BUF_SIZE | 1 | obj->dma_buf | s32min-(-1),1-s32max |
| BUF_SIZE | 1 | obj->funcs | (-1),120 |
| DATA_SOURCE | 0 | objs | r virtio_gpu_array_alloc |
| DATA_SOURCE | 1 | obj | $0 |
| STR_LEN | 1 | obj->dev | (-1),4 |
| NOSPEC | 1 | obj->size | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | obj->filp->f_flags | 0-18433,32770 |
| USER_DATA | 1 | obj->filp->f_mode | 33554432,34078720-571342855[c] |
| USER_DATA | 1 | obj->size | 0-u64max[c] |
| USER_DATA | 1 | obj->vma_node.vm_node.size | 1-s32max[c] |
| USER_DATA | 1 | obj->vma_node.vm_node.start | 0-s32max[c] |
| NO_OVERFLOW_SIMPLE | 1 | obj->base.dev->num_crtcs | |
| NO_OVERFLOW_SIMPLE | 1 | obj->dev->mode_config.num_colorop | |
| NO_OVERFLOW_SIMPLE | 1 | obj->dev->mode_config.num_crtc | |
| NO_OVERFLOW_SIMPLE | 1 | obj->dev->mode_config.num_total_plane | |
| NO_OVERFLOW_SIMPLE | 1 | obj->dev->num_crtcs | |
| NO_OVERFLOW_SIMPLE | 1 | obj->num_pages | |
| HALF_LOCKED2 | &dev->object_name_lock | ||
| HALF_LOCKED2 | &file->driver_priv->mutex | ||
| HALF_LOCKED2 | &file->prime.lock | ||
| HALF_LOCKED2 | 1 | &obj->dev->object_name_lock |
drivers/gpu/drm/virtio/virtgpu_vram.c virtio_gpu_vram_map() -> virtio_gpu_array_add_obj()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | objs | 4096-ptr_max |
| PARAM_VALUE | 0 | objs->nents | 0 |
| PARAM_VALUE | 0 | objs->total | 1 |
| PARAM_VALUE | 1 | obj | 4096-ptr_max |
| PARAM_VALUE | 1 | obj->dev | 4096-ptr_max |
| PARAM_VALUE | 1 | obj->size | 1-u64max |
| BUF_SIZE | 0 | objs | 184-s32max |
| BUF_SIZE | 0 | objs | 184-s32max |
| DATA_SOURCE | 0 | objs | r virtio_gpu_array_alloc |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | global &map_lock |
drivers/gpu/drm/virtio/virtgpu_object.c virtio_gpu_object_create() -> virtio_gpu_array_add_obj()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | objs | 4096-ptr_max |
| PARAM_VALUE | 0 | objs->nents | 0 |
| PARAM_VALUE | 0 | objs->total | 1 |
| PARAM_VALUE | 1 | obj | 4096-ptr_max |
| BUF_SIZE | 0 | objs | 184-s32max |
| BUF_SIZE | 0 | objs | 184-s32max |
| DATA_SOURCE | 0 | objs | r virtio_gpu_array_alloc |
| RX_PATH | |||
| NOCHECK_CALL |