Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/comedi/comedi_buf.c _comedi_buf_write_samples() -> _comedi_buf_write_alloc()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
PARAM_VALUE 0 s->async 4096-ptr_max
DATA_SOURCE 0 s $0
DATA_SOURCE 1 nbytes r comedi_samples_to_bytes
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 s->async_dma_dir 0-u32max
HOST_DATA 0 s->index s32min-s32max
HOST_DATA 0 s->io_bits 0-u32max
HOST_DATA 0 s->len_chanlist s32min-s32max
HOST_DATA 0 s->maxdata 0-u32max
HOST_DATA 0 s->minor s32min-s32max
HOST_DATA 0 s->n_chan s32min-s32max
HOST_DATA 0 s->runflags 0-u32max
HOST_DATA 0 s->state 0-u32max
HOST_DATA 0 s->subdev_flags s32min-s32max
HOST_DATA 0 s->type s32min-s32max
HALF_LOCKED2 &chip->spinlock
HALF_LOCKED2 &dev->spinlock
HALF_LOCKED2 &devpriv->spinlock
HALF_LOCKED2 &sd_priv->subd_slock
HALF_LOCKED2 &subpriv->spinlock
HALF_LOCKED2 irq_flags

drivers/comedi/comedi_buf.c comedi_buf_write_alloc() -> _comedi_buf_write_alloc()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
PARAM_VALUE 0 s->async 4096-ptr_max
DATA_SOURCE 0 s $0
DATA_SOURCE 1 nbytes $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 1 nbytes unit_byte
HALF_LOCKED2 &counter->lock
HALF_LOCKED2 &dev->mutex
HALF_LOCKED2 flags

drivers/comedi/comedi_fops.c comedi_write() -> _comedi_buf_write_alloc()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
PARAM_VALUE 0 s->async 4096-ptr_max
CAPPED_DATA 0 s->busy 1
DATA_SOURCE 0 s r comedi_file_write_subdevice
NOCHECK_CALL
UNITS 1 nbytes unit_byte
LOCK2 &dev->attach_lock
TYPE_LOCK (struct comedi_device)->attach_lock

drivers/comedi/comedi_fops.c do_bufinfo_ioctl() -> _comedi_buf_write_alloc()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
PARAM_VALUE 0 s->async 4096-ptr_max
PARAM_VALUE 1 nbytes 1-u32max
CAPPED_DATA 0 s->busy 1
NOCHECK_CALL
USER_DATA 1 nbytes 1-u32max
LOCK2 &dev->attach_lock
TYPE_LOCK (struct comedi_device)->attach_lock