Documented in 1 files:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/virtio/virtio_rtc_driver.c viortc_alarmq_hdlr() -> viortc_feed_vq()

Type Parameter Key Value
PARAM_VALUE 0 viortc->viortc_class 0,4096-ptr_max
PARAM_VALUE 0 viortc->vqs 4096-ptr_max
PARAM_VALUE 1 vq 4096-ptr_max
PARAM_VALUE 1 vq->callback 1-u64max
PARAM_VALUE 1 vq->vdev 4096-ptr_max
PARAM_VALUE 2 buf 1-u64max
PARAM_VALUE 3 buf_len 16
PARAM_VALUE 4 data 1-u64max
BUF_SIZE 0 viortc s32min-(-2),1-s32max
BUF_SIZE 0 viortc s32min-(-2),1-s32max
DATA_SOURCE 0 viortc $4
DATA_SOURCE 1 vq $2
DATA_SOURCE 2 buf $0
DATA_SOURCE 4 data $0
PARAM_COMPARE 2 buf == $4
PARAM_COMPARE 4 data == $2
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
UNITS 0 viortc unit_byte
UNITS 3 buf_len unit_byte
LOCK2 &viortc_vq->lock
LOCK2 flags
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 &vp_dev->lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct viortc_vq)->lock

drivers/virtio/virtio_rtc_driver.c viortc_populate_vq() -> viortc_feed_vq()

Type Parameter Key Value
PARAM_VALUE 0 viortc 4096-ptr_max
PARAM_VALUE 0 viortc->alarmq_bufs 4096-ptr_max
PARAM_VALUE 0 viortc->vdev 4096-ptr_max
PARAM_VALUE 0 viortc->vdev->config 4096-ptr_max
PARAM_VALUE 0 viortc->vdev->config->find_vqs 4096-ptr_max
PARAM_VALUE 0 viortc->vdev->dev.devres_head.prev 4096-ptr_max
PARAM_VALUE 0 viortc->vdev->dev.devres_head.prev->next 4096-ptr_max
PARAM_VALUE 0 viortc->vdev->dev.devres_head.prev->next->next 4096-ptr_max
PARAM_VALUE 0 viortc->vdev->vqs.prev->next 4096-ptr_max
PARAM_VALUE 0 viortc->vdev->vqs.prev->next->next 4096-ptr_max
PARAM_VALUE 0 viortc->vdev->vqs_list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 viortc->viortc_class->stopped 0-1
PARAM_VALUE 0 viortc->vqs 4096-ptr_max
PARAM_VALUE 3 buf_len 16
BUF_SIZE 0 viortc s32min-(-2),1-s32max
BUF_SIZE 0 viortc s32min-(-2),1-s32max
DATA_SOURCE 0 viortc $0
DATA_SOURCE 3 buf_len $2
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 viortc->num_alarmq_bufs
UNITS 0 viortc unit_byte
UNITS 3 buf_len unit_byte
LOCK2 &viortc_vq->lock
LOCK2 flags
TYPE_LOCK (struct viortc_vq)->lock

drivers/virtio/virtio_rtc_driver.c viortc_populate_vq() -> viortc_feed_vq()

Type Parameter Key Value
PARAM_VALUE 0 viortc 4096-ptr_max
PARAM_VALUE 0 viortc->alarmq_bufs 4096-ptr_max
PARAM_VALUE 0 viortc->vdev 4096-ptr_max
PARAM_VALUE 0 viortc->vdev->config 4096-ptr_max
PARAM_VALUE 0 viortc->vdev->config->find_vqs 4096-ptr_max
PARAM_VALUE 0 viortc->vdev->dev.devres_head.prev 4096-ptr_max
PARAM_VALUE 0 viortc->vdev->dev.devres_head.prev->next 4096-ptr_max
PARAM_VALUE 0 viortc->vdev->dev.devres_head.prev->next->next 4096-ptr_max
PARAM_VALUE 0 viortc->vdev->vqs.prev->next 4096-ptr_max
PARAM_VALUE 0 viortc->vdev->vqs.prev->next->next 4096-ptr_max
PARAM_VALUE 0 viortc->vdev->vqs_list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 viortc->viortc_class->stopped 0-1
PARAM_VALUE 0 viortc->vqs 4096-ptr_max
PARAM_VALUE 3 buf_len 16
BUF_SIZE 0 viortc s32min-(-2),1-s32max
BUF_SIZE 0 viortc s32min-(-2),1-s32max
DATA_SOURCE 0 viortc $0
DATA_SOURCE 3 buf_len $2
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 viortc->num_alarmq_bufs
UNITS 0 viortc unit_byte
UNITS 3 buf_len unit_byte