Defined in 1 files as a prototype:
Defined in 5 files as a function:
- drivers/char/virtio_console.c, line 496 (as a function)
- tools/virtio/ringtest/noring.c, line 12 (as a function)
- tools/virtio/ringtest/ptr_ring.c, line 128 (as a function)
- tools/virtio/ringtest/ring.c, line 112 (as a function)
- tools/virtio/ringtest/virtio_ring_0_9.c, line 99 (as a function)
Referenced in 2 files:
Smatch caller information:
drivers/char/virtio_console.c control_work_handler() -> add_inbuf()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | buf | 4096-ptr_max |
| PARAM_VALUE | 1 | buf->len | 0-u32max |
| PARAM_VALUE | 1 | buf->offset | 0 |
| CAPPED_DATA | 1 | buf->len | 1 |
| DATA_SOURCE | 1 | buf | r virtqueue_get_buf |
| PREEMPT_ADD | <- disables preempt | ||
| HOST_DATA | 1 | buf->dma | 0-u64max |
| HOST_DATA | 1 | buf->len | 0-u32max[c] |
| HOST_DATA | 1 | buf->sgpages | 0-u32max |
| HOST_DATA | 1 | buf->size | 0-u64max |
| LOCK2 | &portdev->c_ivq_lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct ports_device)->c_ivq_lock |
drivers/char/virtio_console.c discard_port_data() -> add_inbuf()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | buf | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HOST_DATA | 1 | buf->dma | 0-u64max |
| HOST_DATA | 1 | buf->len | 0-u32max[c] |
| HOST_DATA | 1 | buf->sgpages | 0-u32max |
| HOST_DATA | 1 | buf->size | 0-u64max |
| LOCK2 | &port->inbuf_lock | ||
| HALF_LOCKED2 | irq | ||
| TYPE_LOCK | (struct port)->inbuf_lock |
drivers/char/virtio_console.c fill_queue() -> add_inbuf()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vq | 4096-ptr_max |
| PARAM_VALUE | 1 | buf | 4096-ptr_max |
| PARAM_VALUE | 1 | buf->buf | 1-ptr_max |
| PARAM_VALUE | 1 | buf->dev | 0,4096-ptr_max |
| PARAM_VALUE | 1 | buf->dev->cma_area->alloc_mutex.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 1 | buf->dev->cma_area->alloc_mutex.first_waiter->list.prev->prev | 5159360019465732096 |
| PARAM_VALUE | 1 | buf->dev->cma_area->alloc_mutex.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 1 | buf->dev->cma_area->nranges | s32min-s32max |
| PARAM_VALUE | 1 | buf->dev->dma_io_tlb_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | buf->dev->dma_io_tlb_pools.next | 4096-ptr_max |
| PARAM_VALUE | 1 | buf->dev->dma_io_tlb_pools.next->prev | 4096-ptr_max |
| PARAM_VALUE | 1 | buf->dev->dma_io_tlb_pools.next->prev->prev | 4096-ptr_max |
| PARAM_VALUE | 1 | buf->dev->dma_mem->spinlock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | buf->dev->dma_uses_io_tlb | 1 |
| PARAM_VALUE | 1 | buf->dev->iommu->attach_deferred | 0-1 |
| PARAM_VALUE | 1 | buf->len | 0 |
| PARAM_VALUE | 1 | buf->offset | 0 |
| PARAM_VALUE | 1 | buf->sgpages | 0 |
| PARAM_VALUE | 1 | buf->size | 4096 |
| BUF_SIZE | 1 | buf | s32min-s32max |
| CAPPED_DATA | 1 | buf->dev | 1 |
| DATA_SOURCE | 0 | vq | $0 |
| DATA_SOURCE | 1 | buf | r alloc_buf |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | irq | ||
| LOCK2 | lock |
drivers/char/virtio_console.c fill_readbuf() -> add_inbuf()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | buf | 4096-ptr_max |
| PARAM_VALUE | 1 | buf->offset | 0-u32max |
| CAPPED_DATA | 1 | buf->len | 1 |
| CAPPED_DATA | 1 | buf->offset | 1 |
| PARAM_COMPARE | 1 | buf->len | == $1->offset |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HOST_DATA | 1 | buf->dma | 0-u64max |
| HOST_DATA | 1 | buf->offset | 0-s32max[c] |
| HOST_DATA | 1 | buf->sgpages | 0-u32max |
| HOST_DATA | 1 | buf->size | 0-u64max |
| LOCK2 | &port->inbuf_lock | ||
| LOCK2 | flags | ||
| TYPE_LOCK | (struct port)->inbuf_lock |