Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/dma/ioat/dma.c __ioat_issue_pending() -> ioat_ring_pending()

Type Parameter Key Value
PARAM_VALUE 0 ioat_chan 4096-ptr_max
BUF_SIZE 0 ioat_chan->ring (-1),524288
DATA_SOURCE 0 ioat_chan $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 ioat_chan->ioat_dma->cap 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->chancnt s32min-s32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.chan_ida.xa.xa_flags 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.chancnt 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.copy_align 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.desc_metadata_modes 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.descriptor_reuse 0-1
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.dev_id s32min-s32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.directions 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.dst_addr_widths 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.fill_align 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.filter.mapcnt s32min-s32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.max_burst 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.max_pq 0-u16max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.max_sg_burst 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.max_xor 0-u16max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.min_burst 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.pq_align 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.privatecnt 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.ref.refcount.refs.counter s32min-s32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.residue_granularity 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.src_addr_widths 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.xor_align 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->irq_mode 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->msixdata0 0-u64max
HOST_DATA 0 ioat_chan->ioat_dma->msixpba 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->msixtba0 0-u64max
HOST_DATA 0 ioat_chan->ioat_dma->version 0-255
HALF_LOCKED2 bh
HALF_LOCKED2 0 &ioat_chan->cleanup_lock
HALF_LOCKED2 0 &ioat_chan->prep_lock

drivers/dma/ioat/dma.c __ioat_restart_chan() -> ioat_ring_pending()

Type Parameter Key Value
PARAM_VALUE 0 ioat_chan 4096-ptr_max
CAPPED_DATA 0 &ioat_chan->timer 1
DATA_SOURCE 0 ioat_chan $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 ioat_chan->ioat_dma->cap 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->chancnt s32min-s32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.chan_ida.xa.xa_flags 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.chancnt 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.copy_align 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.desc_metadata_modes 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.descriptor_reuse 0-1
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.dev_id s32min-s32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.directions 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.dst_addr_widths 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.fill_align 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.filter.mapcnt s32min-s32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.max_burst 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.max_pq 0-u16max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.max_sg_burst 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.max_xor 0-u16max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.min_burst 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.pq_align 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.privatecnt 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.ref.refcount.refs.counter s32min-s32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.residue_granularity 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.src_addr_widths 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->dma_dev.xor_align 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->irq_mode 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->msixdata0 0-u64max
HOST_DATA 0 ioat_chan->ioat_dma->msixpba 0-u32max
HOST_DATA 0 ioat_chan->ioat_dma->msixtba0 0-u64max
HOST_DATA 0 ioat_chan->ioat_dma->version 0-255
LOCK2 0 &ioat_chan->cleanup_lock
HALF_LOCKED2 bh
HALF_LOCKED2 0 &ioat_chan->prep_lock
TYPE_LOCK (struct ioatdma_chan)->cleanup_lock

drivers/dma/ioat/dma.c ioat_issue_pending() -> ioat_ring_pending()

Type Parameter Key Value
PARAM_VALUE 0 ioat_chan 4096-ptr_max
DATA_SOURCE 0 ioat_chan r to_ioat_chan
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ctlr->io_mutex
HALF_LOCKED2 &host->io_mutex
HALF_LOCKED2 rcu_read

drivers/dma/ioat/dma.c ioat_timer_event() -> ioat_ring_pending()

Type Parameter Key Value
PARAM_VALUE 0 ioat_chan 4096-ptr_max
CAPPED_DATA 0 ioat_chan->last_completion 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 bh
LOCK2 0 &ioat_chan->cleanup_lock
TYPE_LOCK (struct ioatdma_chan)->cleanup_lock

drivers/dma/ioat/dma.c ioat_update_pending() -> ioat_ring_pending()

Type Parameter Key Value
PARAM_VALUE 0 ioat_chan 4096-ptr_max
DATA_SOURCE 0 ioat_chan $0
TASK_NOT_RUNNING
HALF_LOCKED2 &board->spinlock
HALF_LOCKED2 &controller->io_mutex
HALF_LOCKED2 &ctlr->io_mutex
HALF_LOCKED2 &ctrl->io_mutex
HALF_LOCKED2 &data->lock
HALF_LOCKED2 &dcmi->irqlock
HALF_LOCKED2 &dma->lock
HALF_LOCKED2 &dmm->wa_lock
HALF_LOCKED2 &epf_mhi->lock
HALF_LOCKED2 &host->io_mutex
HALF_LOCKED2 &host->lock
HALF_LOCKED2 &host->thread_lock
HALF_LOCKED2 &mem->spi->controller->bus_lock_mutex
HALF_LOCKED2 &mem->spi->controller->io_mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &ospi->lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &port->lock
HALF_LOCKED2 &priv->lock
HALF_LOCKED2 &priv->port.lock
HALF_LOCKED2 &qspi->list_lock
HALF_LOCKED2 &qspi->lock
HALF_LOCKED2 &sctlr->io_mutex
HALF_LOCKED2 &sdd->lock
HALF_LOCKED2 &sdr->v4l2_mutex
HALF_LOCKED2 &spi->io_mutex
HALF_LOCKED2 &spi->lock
HALF_LOCKED2 &spi->mutex_lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 ap->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq