Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 3 files:
- drivers/gpu/drm/virtio/virtgpu_gem.c
- drivers/gpu/drm/virtio/virtgpu_ioctl.c
- drivers/gpu/drm/virtio/virtgpu_vq.c
Smatch caller information:
drivers/gpu/drm/virtio/virtgpu_ioctl.c virtio_gpu_transfer_from_host_ioctl() -> virtio_gpu_array_unlock_resv()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | objs | 4096-ptr_max |
| PARAM_VALUE | 0 | objs->nents | 1 |
| PARAM_VALUE | 0 | objs->objs | 4096-ptr_max |
| PARAM_VALUE | 0 | objs->ticket.contending_lock | 0 |
| PARAM_VALUE | 0 | objs->ticket.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | objs->ticket.done_acquire | 1 |
| PARAM_VALUE | 0 | objs->ticket.first_lock_dep_map->name | 0-255 |
| PARAM_VALUE | 0 | objs->ticket.wounded | 0-1 |
| PARAM_VALUE | 0 | objs->ticket.ww_class->acquire_name | 4096-ptr_max |
| PARAM_VALUE | 0 | objs->ticket.ww_class->is_wait_die | 0-s32max |
| PARAM_VALUE | 0 | objs->ticket.ww_class->mutex_name | 4096-ptr_max |
| 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_from_handles |
| NOCHECK_CALL | |||
| USER_DATA | 0 | objs->total | 1[u] |
drivers/gpu/drm/virtio/virtgpu_ioctl.c virtio_gpu_transfer_to_host_ioctl() -> virtio_gpu_array_unlock_resv()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | objs | 4096-ptr_max |
| PARAM_VALUE | 0 | objs->nents | 1 |
| PARAM_VALUE | 0 | objs->objs | 4096-ptr_max |
| PARAM_VALUE | 0 | objs->ticket.contending_lock | 0 |
| PARAM_VALUE | 0 | objs->ticket.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | objs->ticket.done_acquire | 1 |
| PARAM_VALUE | 0 | objs->ticket.first_lock_dep_map->name | 0-255 |
| PARAM_VALUE | 0 | objs->ticket.wounded | 0-1 |
| PARAM_VALUE | 0 | objs->ticket.ww_class->acquire_name | 4096-ptr_max |
| PARAM_VALUE | 0 | objs->ticket.ww_class->is_wait_die | 0-s32max |
| PARAM_VALUE | 0 | objs->ticket.ww_class->mutex_name | 4096-ptr_max |
| 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_from_handles |
| NOCHECK_CALL | |||
| USER_DATA | 0 | objs->total | 1[u] |
drivers/gpu/drm/virtio/virtgpu_vq.c virtio_gpu_queue_ctrl_sgs() -> virtio_gpu_array_unlock_resv()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | objs | 1-u64max |
| BUF_SIZE | 0 | objs | (-1)-0,184-s32max |
| BUF_SIZE | 0 | objs | (-1)-0,184-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | objs->total | 1[u] |
| HALF_LOCKED2 | &vgdev->obj_restore_lock |
drivers/gpu/drm/virtio/virtgpu_vq.c virtio_gpu_queue_ctrl_sgs() -> virtio_gpu_array_unlock_resv()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | objs | 1-u64max |
| BUF_SIZE | 0 | objs | (-1)-0,184-s32max |
| BUF_SIZE | 0 | objs | (-1)-0,184-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | objs->total | 1[u] |
| LOCK2 | global &drm_unplug_srcu | ||
| HALF_LOCKED2 | &vgdev->obj_restore_lock |
drivers/gpu/drm/virtio/virtgpu_vq.c virtio_gpu_queue_ctrl_sgs() -> virtio_gpu_array_unlock_resv()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | objs | 4096-ptr_max |
| PARAM_VALUE | 0 | objs->nents | 0-s32max |
| BUF_SIZE | 0 | objs | (-1)-0,184-s32max |
| BUF_SIZE | 0 | objs | (-1)-0,184-s32max |
| CAPPED_DATA | 0 | objs->nents | 1 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | objs->total | 1[u] |
| LOCK2 | &vgdev->ctrlq.qlock | ||
| LOCK2 | global &drm_unplug_srcu | ||
| HALF_LOCKED2 | &vgdev->obj_restore_lock | ||
| TYPE_LOCK | (struct virtio_gpu_queue)->qlock |
drivers/gpu/drm/virtio/virtgpu_vq.c virtio_gpu_queue_fenced_ctrl_buffer() -> virtio_gpu_array_unlock_resv()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | objs | 1-u64max |
| BUF_SIZE | 0 | objs | (-1)-0,184-s32max |
| BUF_SIZE | 0 | objs | (-1)-0,184-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | objs->total | 1[u] |
drivers/gpu/drm/virtio/virtgpu_gem.c virtio_gpu_array_lock_resv() -> virtio_gpu_array_unlock_resv()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | objs | 4096-ptr_max |
| PARAM_VALUE | 0 | objs->nents | 1-u32max |
| PARAM_VALUE | 0 | objs->objs | 4096-ptr_max |
| PARAM_VALUE | 0 | objs->ticket.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | objs->ticket.first_lock_dep_map->name | 0-255 |
| PARAM_VALUE | 0 | objs->ticket.wounded | 0-1 |
| PARAM_VALUE | 0 | objs->ticket.ww_class->acquire_name | 0,4096-ptr_max |
| PARAM_VALUE | 0 | objs->ticket.ww_class->is_wait_die | 0-s32max |
| PARAM_VALUE | 0 | objs->ticket.ww_class->mutex_name | 0,4096-ptr_max |
| BUF_SIZE | 0 | objs | (-1),184-s32max |
| BUF_SIZE | 0 | objs | (-1),184-s32max |
| CAPPED_DATA | 0 | objs->nents | 1 |
| DATA_SOURCE | 0 | objs | $0 |
| RX_PATH | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | objs->total | 1[u] |
drivers/gpu/drm/virtio/virtgpu_gem.c virtio_gpu_lock_one_resv_uninterruptible() -> virtio_gpu_array_unlock_resv()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | objs | 4096-ptr_max |
| PARAM_VALUE | 0 | objs->nents | 1 |
| PARAM_VALUE | 0 | objs->objs | 4096-ptr_max |
| PARAM_VALUE | 0 | objs->total | 1 |
| BUF_SIZE | 0 | objs | 184-s32max |
| BUF_SIZE | 0 | objs | 184-s32max |
| DATA_SOURCE | 0 | objs | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | irq |