Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/vdpa/solidrun/snet_ctrl.c snet_ctrl_read_from_dpu() -> snet_write_ctrl()

Type Parameter Key Value
PARAM_VALUE 0 ctrl_regs 4096-ptr_max
PARAM_VALUE 1 val 1
DATA_SOURCE 0 ctrl_regs r snet_get_ctrl
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &d->mutex
LOCK2 &snet->ctrl_lock
LOCK2 &snet->ctrl_spinlock
TYPE_LOCK (struct snet)->ctrl_lock
TYPE_LOCK (struct snet)->ctrl_spinlock
TYPE_LOCK (struct vhost_dev)->mutex

drivers/vdpa/solidrun/snet_ctrl.c snet_ctrl_read_from_dpu() -> snet_write_ctrl()

Type Parameter Key Value
PARAM_VALUE 0 ctrl_regs 4096-ptr_max
PARAM_VALUE 1 val 65536-u32max
DATA_SOURCE 0 ctrl_regs r snet_get_ctrl
BIT_INFO 1 val 0x10000,0xf001ffff
NOCHECK_CALL
HOST_DATA 1 val 65536-u32max[c]
LOCK2 &d->mutex
LOCK2 &snet->ctrl_lock
TYPE_LOCK (struct snet)->ctrl_lock
TYPE_LOCK (struct vhost_dev)->mutex

drivers/vdpa/solidrun/snet_ctrl.c snet_send_ctrl_msg() -> snet_write_ctrl()

Type Parameter Key Value
PARAM_VALUE 0 ctrl_regs 4096-ptr_max
PARAM_VALUE 1 val 0
DATA_SOURCE 0 ctrl_regs r snet_get_ctrl
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &snet->ctrl_lock
LOCK2 &snet->ctrl_spinlock
HALF_LOCKED2 &d->mutex
HALF_LOCKED2 &vdev->cf_lock
TYPE_LOCK (struct snet)->ctrl_lock
TYPE_LOCK (struct snet)->ctrl_spinlock

drivers/vdpa/solidrun/snet_ctrl.c snet_send_ctrl_msg() -> snet_write_ctrl()

Type Parameter Key Value
PARAM_VALUE 0 ctrl_regs 4096-ptr_max
DATA_SOURCE 0 ctrl_regs r snet_get_ctrl
BIT_INFO 1 val 0x0,0xfffdffff
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 1 val 0-u32max[c]
LOCK2 &snet->ctrl_lock
HALF_LOCKED2 &d->mutex
HALF_LOCKED2 &vdev->cf_lock
TYPE_LOCK (struct snet)->ctrl_lock