Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/vdpa/solidrun/snet_ctrl.c snet_ctrl_clear() -> snet_write_op()

Type Parameter Key Value
PARAM_VALUE 1 val 0
DATA_SOURCE 0 ctrl_regs r snet_get_ctrl
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

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

Type Parameter Key Value
PARAM_VALUE 0 ctrl_regs 4096-ptr_max
PARAM_VALUE 1 val 0,2-s32max,2147483650-4294901762
CAPPED_DATA 1 val 1
DATA_SOURCE 0 ctrl_regs r snet_get_ctrl
BIT_INFO 1 val 0x2,0x2
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
USER_DATA 1 val 0,2-s32max,2147483650-4294901762[c]
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_send_ctrl_msg() -> snet_write_op()

Type Parameter Key Value
PARAM_VALUE 0 ctrl_regs 4096-ptr_max
PARAM_VALUE 1 val 1,3-4
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_old() -> snet_write_op()

Type Parameter Key Value
PARAM_VALUE 0 ctrl_regs 4096-ptr_max
PARAM_VALUE 1 val 1,3-4
DATA_SOURCE 0 ctrl_regs r snet_get_ctrl
DATA_SOURCE 1 val $1
HARD_MAX 1 val 4
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &snet->ctrl_lock
HALF_LOCKED2 &d->mutex
HALF_LOCKED2 &vdev->cf_lock
TYPE_LOCK (struct snet)->ctrl_lock