Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/thunderbolt/stream.c tbstream_dev_fops_open() -> tbstream_dev_valid()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
CAPPED_DATA 0 &sdev->lock 1
DATA_SOURCE 0 sdev r to_tbstream_dev
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &sdev->lock
TYPE_LOCK (struct tbstream_dev)->lock

drivers/thunderbolt/stream.c tbstream_dev_fops_open() -> tbstream_dev_valid()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
PARAM_VALUE 0 sdev->stream 0,4096-ptr_max
CAPPED_DATA 0 &sdev->lock 1
DATA_SOURCE 0 sdev r to_tbstream_dev
RX_PATH
TASK_NOT_RUNNING

drivers/thunderbolt/stream.c tbstream_dev_fops_open() -> tbstream_dev_valid()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
PARAM_VALUE 0 sdev->stream 0,4096-ptr_max
CAPPED_DATA 0 &sdev->lock 1
DATA_SOURCE 0 sdev r to_tbstream_dev
RX_PATH
TASK_NOT_RUNNING

drivers/thunderbolt/stream.c tbstream_dev_fops_open() -> tbstream_dev_valid()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
PARAM_VALUE 0 sdev->stream 0,4096-ptr_max
CAPPED_DATA 0 &sdev->lock 1
DATA_SOURCE 0 sdev r to_tbstream_dev
RX_PATH
TASK_NOT_RUNNING

drivers/thunderbolt/stream.c tbstream_dev_fops_open() -> tbstream_dev_valid()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
PARAM_VALUE 0 sdev->stream 0,4096-ptr_max
CAPPED_DATA 0 &sdev->lock 1
DATA_SOURCE 0 sdev r to_tbstream_dev
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &sdev->lock
TYPE_LOCK (struct tbstream_dev)->lock

drivers/thunderbolt/stream.c tbstream_dev_fops_poll() -> tbstream_dev_valid()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
DATA_SOURCE 0 sdev r to_tbstream_dev
RX_PATH
TASK_NOT_RUNNING
LOCK2 _T->lock
HALF_LOCKED2 &kvm->irq_srcu
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &vm->irqfds_lock
HALF_LOCKED2 global &irqfds_srcu

drivers/thunderbolt/stream.c tbstream_dev_fops_read_iter() -> tbstream_dev_valid()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
DATA_SOURCE 0 sdev r to_tbstream_dev
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock

drivers/thunderbolt/stream.c tbstream_dev_fops_read_iter() -> tbstream_dev_valid()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
PARAM_VALUE 0 sdev->in_hopid 1-s32max
PARAM_VALUE 0 sdev->out_hopid 1-s32max
PARAM_VALUE 0 sdev->stream 4096-ptr_max
DATA_SOURCE 0 sdev r to_tbstream_dev
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &sdev->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct tbstream_dev)->lock

drivers/thunderbolt/stream.c tbstream_dev_fops_read_iter() -> tbstream_dev_valid()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
PARAM_VALUE 0 sdev->in_hopid 1-s32max
PARAM_VALUE 0 sdev->out_hopid 1-s32max
PARAM_VALUE 0 sdev->stream 4096-ptr_max
CAPPED_DATA 0 sdev->rx_ring.prod 1
CAPPED_DATA 0 &sdev->lock 1
DATA_SOURCE 0 sdev r to_tbstream_dev
PARAM_COMPARE 0 sdev->rx_ring.cons >= $0->rx_ring.prod
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock

drivers/thunderbolt/stream.c tbstream_dev_fops_read_iter() -> tbstream_dev_valid()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
PARAM_VALUE 0 sdev->in_hopid 1-s32max
PARAM_VALUE 0 sdev->out_hopid 1-s32max
PARAM_VALUE 0 sdev->stream 4096-ptr_max
CAPPED_DATA 0 sdev->rx_ring.prod 1
CAPPED_DATA 0 &sdev->lock 1
DATA_SOURCE 0 sdev r to_tbstream_dev
PARAM_COMPARE 0 sdev->rx_ring.cons >= $0->rx_ring.prod
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock

drivers/thunderbolt/stream.c tbstream_dev_fops_read_iter() -> tbstream_dev_valid()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
PARAM_VALUE 0 sdev->in_hopid 1-s32max
PARAM_VALUE 0 sdev->out_hopid 1-s32max
PARAM_VALUE 0 sdev->stream 4096-ptr_max
CAPPED_DATA 0 sdev->rx_ring.prod 1
CAPPED_DATA 0 &sdev->lock 1
DATA_SOURCE 0 sdev r to_tbstream_dev
PARAM_COMPARE 0 sdev->rx_ring.cons >= $0->rx_ring.prod
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock

drivers/thunderbolt/stream.c tbstream_dev_fops_write_iter() -> tbstream_dev_valid()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
DATA_SOURCE 0 sdev r to_tbstream_dev
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock

drivers/thunderbolt/stream.c tbstream_dev_fops_write_iter() -> tbstream_dev_valid()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
PARAM_VALUE 0 sdev->in_hopid 1-s32max
PARAM_VALUE 0 sdev->out_hopid 1-s32max
PARAM_VALUE 0 sdev->stream 4096-ptr_max
DATA_SOURCE 0 sdev r to_tbstream_dev
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &sdev->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct tbstream_dev)->lock

drivers/thunderbolt/stream.c tbstream_dev_fops_write_iter() -> tbstream_dev_valid()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
PARAM_VALUE 0 sdev->in_hopid 1-s32max
PARAM_VALUE 0 sdev->out_hopid 1-s32max
PARAM_VALUE 0 sdev->stream 4096-ptr_max
CAPPED_DATA 0 sdev->tx_ring.prod 1
CAPPED_DATA 0 &sdev->lock 1
DATA_SOURCE 0 sdev r to_tbstream_dev
PARAM_COMPARE 0 sdev->tx_ring.cons >= $0->tx_ring.prod
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock

drivers/thunderbolt/stream.c tbstream_dev_fops_write_iter() -> tbstream_dev_valid()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
PARAM_VALUE 0 sdev->in_hopid 1-s32max
PARAM_VALUE 0 sdev->out_hopid 1-s32max
PARAM_VALUE 0 sdev->stream 4096-ptr_max
CAPPED_DATA 0 sdev->tx_ring.prod 1
CAPPED_DATA 0 &sdev->lock 1
DATA_SOURCE 0 sdev r to_tbstream_dev
PARAM_COMPARE 0 sdev->tx_ring.cons >= $0->tx_ring.prod
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock

drivers/thunderbolt/stream.c tbstream_dev_fops_write_iter() -> tbstream_dev_valid()

Type Parameter Key Value
PARAM_VALUE 0 sdev 4096-ptr_max
PARAM_VALUE 0 sdev->in_hopid 1-s32max
PARAM_VALUE 0 sdev->out_hopid 1-s32max
PARAM_VALUE 0 sdev->stream 4096-ptr_max
CAPPED_DATA 0 sdev->tx_ring.prod 1
CAPPED_DATA 0 &sdev->lock 1
DATA_SOURCE 0 sdev r to_tbstream_dev
PARAM_COMPARE 0 sdev->tx_ring.cons >= $0->tx_ring.prod
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock