Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

block/blk-mq.c blk_execute_rq() -> blk_account_io_start()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->end_io 8224711835847061504
PARAM_VALUE 0 req->end_io_data 1964915337089572864
BUF_SIZE 0 req->end_io_data 104
CAPPED_DATA 0 req 1
DATA_SOURCE 0 req $0
NOSPEC 0 req->__data_len
NOSPEC 0 req->biotail->bi_iter.bi_size
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 req->__data_len 0-1000000000
USER_DATA 0 req->biotail->bi_iter.bi_size 0-u32max
USER_DATA 0 req->biotail->bi_max_vecs 0-4,16,64,128,256[c]
USER_DATA 0 req->biotail->bi_next->bi_max_vecs 0-4,16,64,128,256[c]
NO_OVERFLOW_SIMPLE 0 req->bio->bi_iter.bi_sector
NO_OVERFLOW_SIMPLE 0 req->bio->bi_max_vecs
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->async_depth
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->limits.discard_granularity
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->limits.max_hw_discard_sectors
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->limits.max_open_zones
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->limits.zone_write_granularity
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->nr_hw_queues
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->nr_requests
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->q_usage_counter.percpu_count_ptr
NO_OVERFLOW_SIMPLE 0 req->q->async_depth
NO_OVERFLOW_SIMPLE 0 req->q->limits.discard_granularity
NO_OVERFLOW_SIMPLE 0 req->q->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 0 req->q->limits.max_hw_discard_sectors
NO_OVERFLOW_SIMPLE 0 req->q->limits.max_open_zones
NO_OVERFLOW_SIMPLE 0 req->q->limits.zone_write_granularity
NO_OVERFLOW_SIMPLE 0 req->q->nr_hw_queues
NO_OVERFLOW_SIMPLE 0 req->q->nr_requests
NO_OVERFLOW_SIMPLE 0 req->q->q_usage_counter.percpu_count_ptr
HALF_LOCKED2 &attr->mutex
HALF_LOCKED2 &cd->lock
HALF_LOCKED2 &hba->clk_scaling_lock
HALF_LOCKED2 &hba->dev_cmd.lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &vblk->vdev_mutex

block/blk-mq.c blk_execute_rq_nowait() -> blk_account_io_start()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->__sector u64max
PARAM_VALUE 0 req->bio 0,4096-ptr_max
PARAM_VALUE 0 req->biotail 0,4096-ptr_max
PARAM_VALUE 0 req->biotail->bi_crypt_context 0,4096-ptr_max
PARAM_VALUE 0 req->end_io 4096-ptr_max
PARAM_VALUE 0 req->q 4096-ptr_max
BUF_SIZE 0 req->end_io_data (-1)-0,144,512
CAPPED_DATA 0 req 1
DATA_SOURCE 0 req $0
STR_LEN 0 req->end_io_data (-1)
BIT_INFO 0 req->end_io 0x0,0x7fffffffffffffff
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 req->bio->bi_iter.bi_sector
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->async_depth
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->limits.discard_granularity
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->limits.max_hw_discard_sectors
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->limits.max_open_zones
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->limits.zone_write_granularity
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->nr_hw_queues
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->nr_requests
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->q_usage_counter.percpu_count_ptr
NO_OVERFLOW_SIMPLE 0 req->q->async_depth
NO_OVERFLOW_SIMPLE 0 req->q->limits.discard_granularity
NO_OVERFLOW_SIMPLE 0 req->q->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 0 req->q->limits.max_hw_discard_sectors
NO_OVERFLOW_SIMPLE 0 req->q->limits.max_open_zones
NO_OVERFLOW_SIMPLE 0 req->q->limits.zone_write_granularity
NO_OVERFLOW_SIMPLE 0 req->q->nr_hw_queues
NO_OVERFLOW_SIMPLE 0 req->q->nr_requests
NO_OVERFLOW_SIMPLE 0 req->q->q_usage_counter.percpu_count_ptr

block/blk-mq.c blk_insert_cloned_request() -> blk_account_io_start()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->bio 0,4096-ptr_max
PARAM_VALUE 0 req->biotail 0,4096-ptr_max
PARAM_VALUE 0 req->biotail->__bi_cnt.counter 1
PARAM_VALUE 0 req->biotail->__bi_nr_segments u32max
PARAM_VALUE 0 req->biotail->__bi_remaining.counter 1
PARAM_VALUE 0 req->biotail->bi_bvec_gap_bit 0
PARAM_VALUE 0 req->biotail->bi_cookie u32max
PARAM_VALUE 0 req->biotail->bi_crypt_context 0,4096-ptr_max
PARAM_VALUE 0 req->biotail->bi_end_io 0,3281127521759952896
PARAM_VALUE 0 req->biotail->bi_flags 0
PARAM_VALUE 0 req->biotail->bi_integrity 0,4096-ptr_max
PARAM_VALUE 0 req->biotail->bi_iocost_cost 0
PARAM_VALUE 0 req->biotail->bi_iter.bi_idx 0
PARAM_VALUE 0 req->biotail->bi_iter.bi_sector 0
PARAM_VALUE 0 req->biotail->bi_iter.bi_size 0
PARAM_VALUE 0 req->biotail->bi_max_vecs 0-4,16,64,128,256
PARAM_VALUE 0 req->biotail->bi_next 0
PARAM_VALUE 0 req->biotail->bi_next->__bi_cnt.counter 1
PARAM_VALUE 0 req->biotail->bi_next->__bi_nr_segments u32max
PARAM_VALUE 0 req->biotail->bi_next->__bi_remaining.counter 1
PARAM_VALUE 0 req->biotail->bi_next->bi_cookie u32max
PARAM_VALUE 0 req->biotail->bi_next->bi_end_io 0,3281127521759952896
PARAM_VALUE 0 req->biotail->bi_next->bi_max_vecs 0-4,16,64,128,256
PARAM_VALUE 0 req->biotail->bi_next->bi_opf 0,65536-u32max
PARAM_VALUE 0 req->biotail->bi_next->bi_pool 4096-ptr_max
PARAM_VALUE 0 req->biotail->bi_opf 0,65536-u32max
PARAM_VALUE 0 req->biotail->bi_pool 4096-ptr_max
PARAM_VALUE 0 req->biotail->bi_private 0
PARAM_VALUE 0 req->biotail->bi_status 0
PARAM_VALUE 0 req->biotail->bi_vcnt 0
PARAM_VALUE 0 req->biotail->issue_time_ns 0
PARAM_VALUE 0 req->cmd_flags 0,512-u32max
PARAM_VALUE 0 req->crypt_ctx 1-u64max
PARAM_VALUE 0 req->crypt_keyslot 0,4096-ptr_max
PARAM_VALUE 0 req->crypt_keyslot->slot_refs.counter 1
PARAM_VALUE 0 req->end_io 682705916166324224
PARAM_VALUE 0 req->end_io_data 4096-ptr_max
PARAM_VALUE 0 req->q 4096-ptr_max
PARAM_VALUE 0 req->q->crypto_profile->dev->power.deferred_resume 0-1
PARAM_VALUE 0 req->q->crypto_profile->dev->power.idle_notification 0-1
PARAM_VALUE 0 req->q->crypto_profile->dev->power.request 0-4
PARAM_VALUE 0 req->q->crypto_profile->dev->power.request_pending 0-1
PARAM_VALUE 0 req->q->crypto_profile->dev->power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 req->q->crypto_profile->dev->power.runtime_status 0,2
PARAM_VALUE 0 req->q->crypto_profile->dev->power.timer_autosuspends 0-1
PARAM_VALUE 0 req->q->crypto_profile->dev->power.usage_count.counter s32min-s32max
PARAM_VALUE 0 req->q->crypto_profile->lock.dep_map->name 0-255
PARAM_VALUE 0 req->q->crypto_profile->lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 req->q->crypto_profile->lock.first_waiter->list.next 2212933610777083904,2624917664208203776
PARAM_VALUE 0 req->q->crypto_profile->lock.first_waiter->list.prev 2212933610777083904,2624917664208203776
PARAM_VALUE 0 req->q->crypto_profile->lock.first_waiter->type 0-1
PARAM_VALUE 0 req->q->disk 0,4096-ptr_max
PARAM_VALUE 0 req->q->disk->part0 4096-ptr_max
PARAM_VALUE 0 req->rq_flags 0,4096-u32max
PARAM_VALUE 0 *req->crypt_ctx->bc_key->bytes 0-255
CAPPED_DATA 0 req->nr_phys_segments 1
DATA_SOURCE 0 req $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 req->bio->bi_iter.bi_sector
HALF_LOCKED2 __tag_set->srcu
HALF_LOCKED2 rcu_read

block/blk-mq.c blk_mq_bio_to_request() -> blk_account_io_start()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->bio 4096-ptr_max
PARAM_VALUE 0 req->biotail 4096-ptr_max
PARAM_VALUE 0 req->biotail->bi_bdev 4096-ptr_max
PARAM_VALUE 0 req->mq_hctx->type 0-2
PARAM_VALUE 0 req->q 4096-ptr_max
BUF_SIZE 0 req->biotail (-1)-0,4,24,32,64,144-s32max
CAPPED_DATA 0 req->q 1
DATA_SOURCE 0 req $0
STR_LEN 0 req->biotail->bi_private (-1),8,11-12,14,17,19-20,23,26-27,29,31-32
NOSPEC 0 req->__data_len
NOSPEC 0 req->__sector
NOSPEC 0 req->biotail->bi_iter.bi_sector
NOSPEC 0 req->biotail->bi_iter.bi_size
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 req->__data_len 0-u32max[c]
HOST_DATA 0 req->__sector 0-u64max
HOST_DATA 0 req->biotail->bi_iter.bi_sector 0-u64max
HOST_DATA 0 req->biotail->bi_iter.bi_size 0-u32max[c]
HOST_DATA 0 req->biotail->bi_max_vecs 0-u16max[c]
USER_DATA 0 req->__data_len 0-u32max
USER_DATA 0 req->__sector 0-u64max
USER_DATA 0 req->biotail->bi_ioprio 0-u16max
USER_DATA 0 req->biotail->bi_iter.bi_sector 0-u64max
USER_DATA 0 req->biotail->bi_iter.bi_size 0-u32max
USER_DATA 0 req->biotail->bi_max_vecs 0-u16max[c]
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->async_depth
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->limits.discard_granularity
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->limits.max_hw_discard_sectors
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->limits.max_open_zones
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->limits.zone_write_granularity
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->nr_hw_queues
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->nr_requests
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->q_usage_counter.percpu_count_ptr
NO_OVERFLOW_SIMPLE 0 req->q->async_depth
NO_OVERFLOW_SIMPLE 0 req->q->limits.discard_granularity
NO_OVERFLOW_SIMPLE 0 req->q->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 0 req->q->limits.max_hw_discard_sectors
NO_OVERFLOW_SIMPLE 0 req->q->limits.max_open_zones
NO_OVERFLOW_SIMPLE 0 req->q->limits.zone_write_granularity
NO_OVERFLOW_SIMPLE 0 req->q->nr_hw_queues
NO_OVERFLOW_SIMPLE 0 req->q->nr_requests
NO_OVERFLOW_SIMPLE 0 req->q->q_usage_counter.percpu_count_ptr
HALF_LOCKED2 &bio->bi_bdev->bd_queue->queue_lock