Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 16 files:

Smatch caller information:

drivers/md/dm-rq.c end_clone_bio() -> blk_update_request()

Type Parameter Key Value
PARAM_VALUE 1 error 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/block/floppy.c floppy_end_request() -> blk_update_request()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->q 4096-ptr_max
PARAM_VALUE 0 req->q->disk 4096-ptr_max
PARAM_VALUE 1 error 0,10
PARAM_VALUE 2 nr_bytes 0,512-4294966784
DATA_SOURCE 0 req $0
DATA_SOURCE 1 error $1
BIT_INFO 2 nr_bytes 0x0,0xfffffe00
HARD_MAX 1 error 10
HALF_LOCKED2 &pool->lock

block/blk-mq.c blk_mq_end_request() -> blk_update_request()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->q->elevator->type->elevator_attrs 4096-ptr_max
PARAM_VALUE 0 req->q->elevator->type->elevator_name 4096-ptr_max
PARAM_VALUE 0 req->q->elevator->type->icq_align 0,8
BUF_SIZE 0 req (-1),1-s32max
BUF_SIZE 0 req (-1),1-s32max
DATA_SOURCE 0 req $0
DATA_SOURCE 1 error $1
NOSPEC 0 req->__data_len
NOSPEC 0 req->__sector
NOSPEC 0 req->bio->bi_iter.bi_sector
NOSPEC 0 req->bio->bi_iter.bi_size
NOSPEC 0 req->biotail->bi_iter.bi_sector
NOSPEC 0 req->biotail->bi_iter.bi_size
NOSPEC 0 req->biotail->bi_next->bi_iter.bi_sector
NOSPEC 0 req->biotail->bi_next->bi_iter.bi_size
NOSPEC 2 nr_bytes
NOSPEC 2 nr_bytes
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 req->__data_len 0-u32max[c]
HOST_DATA 0 req->__sector 0-u64max
HOST_DATA 0 req->bio->bi_iter.bi_sector 0-u64max
HOST_DATA 0 req->bio->bi_iter.bi_size 0-u32max[c]
HOST_DATA 0 req->bio->bi_max_vecs 0-u16max[c]
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]
HOST_DATA 0 req->biotail->bi_next->bi_iter.bi_sector 0-u64max
HOST_DATA 0 req->biotail->bi_next->bi_iter.bi_size 0,512-4294966784[c]
HOST_DATA 0 req->biotail->bi_next->bi_max_vecs 0-4,16,64,128,256[c]
HOST_DATA 2 nr_bytes 0-u32max[c]
USER_DATA 0 req->__data_len 0-u32max
USER_DATA 0 req->__sector 0-u64max
USER_DATA 0 req->bio->bi_ioprio 0-u16max
USER_DATA 0 req->bio->bi_iter.bi_sector 0-u64max
USER_DATA 0 req->bio->bi_iter.bi_size 0-u32max
USER_DATA 0 req->bio->bi_max_vecs 0-u16max[c]
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]
USER_DATA 0 req->biotail->bi_next->bi_ioprio 0-u16max
USER_DATA 0 req->biotail->bi_next->bi_iter.bi_sector 0-u64max
USER_DATA 0 req->biotail->bi_next->bi_iter.bi_size 0-u32max
USER_DATA 0 req->biotail->bi_next->bi_max_vecs 0-u16max[c]
USER_DATA 0 req->tag 1-65534[c]
USER_DATA 2 nr_bytes 0-u32max
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->ioc
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.io_min
NO_OVERFLOW_SIMPLE 0 req->elv.icq->q->limits.logical_block_size
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.physical_block_size
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.io_min
NO_OVERFLOW_SIMPLE 0 req->q->limits.logical_block_size
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.physical_block_size
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 &fq->mq_flush_lock
HALF_LOCKED2 bh

drivers/mmc/core/block.c mmc_blk_cqe_complete_rq() -> blk_update_request()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->q 4096-ptr_max
PARAM_VALUE 1 error 0
DATA_SOURCE 0 req $1
RX_PATH
TASK_NOT_RUNNING
UNITS 2 nr_bytes unit_byte

drivers/mmc/core/block.c mmc_blk_mq_complete_rq() -> blk_update_request()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 1 error 0
PARAM_VALUE 2 nr_bytes 1-u32max
DATA_SOURCE 0 req $1
RX_PATH
TASK_NOT_RUNNING
UNITS 2 nr_bytes unit_byte

drivers/scsi/scsi_lib.c scsi_end_request() -> blk_update_request()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 1 error 0,3-8,10,14,17
DATA_SOURCE 0 req $0
DATA_SOURCE 1 error $1
DATA_SOURCE 2 nr_bytes $2
FUZZY_MAX 1 error 14
RX_PATH
TASK_NOT_RUNNING
UNITS 2 nr_bytes unit_byte

drivers/memstick/core/mspro_block.c mspro_block_complete_req() -> blk_update_request()

Type Parameter Key Value
PARAM_VALUE 0 req 1-u64max
PARAM_VALUE 1 error 0-19
BIT_INFO 1 error 0x0,0x1f
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
UNITS 2 nr_bytes unit_byte
LOCK2 &msb->q_lock
LOCK2 flags
HALF_LOCKED2 &dev->io_thread_lock
HALF_LOCKED2 &fm->lock
HALF_LOCKED2 &host->host_mutex
HALF_LOCKED2 &host->lock
HALF_LOCKED2 &sock->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct mspro_block_data)->q_lock

drivers/memstick/core/mspro_block.c mspro_block_issue_req() -> blk_update_request()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->bio 0,4096-ptr_max
PARAM_VALUE 1 error 9
BIT_INFO 2 nr_bytes 0x0,0x7fffffff
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 2 nr_bytes unit_byte
LOCK2 &msb->q_lock
HALF_LOCKED2 irq
TYPE_LOCK (struct mspro_block_data)->q_lock

drivers/memstick/core/ms_block.c msb_io_work() -> blk_update_request()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 1 error 0
PARAM_VALUE 2 nr_bytes 1-u32max
HALF_LOCKED2 &pool->lock

drivers/block/loop.c lo_complete_rq() -> blk_update_request()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->q 4096-ptr_max
PARAM_VALUE 0 req->q->mq_ops 4096-ptr_max
PARAM_VALUE 1 error 0
DATA_SOURCE 0 req $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/block/ublk_drv.c __ublk_complete_rq() -> blk_update_request()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->__data_len 1-u32max
PARAM_VALUE 0 req->mq_hctx 4096-ptr_max
PARAM_VALUE 0 req->mq_hctx->driver_data 4096-ptr_max
PARAM_VALUE 1 error 0
PARAM_VALUE 2 nr_bytes 0-s32max
CAPPED_DATA 2 nr_bytes 1
DATA_SOURCE 0 req $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 nr_bytes 1-s32max[c]
UNITS 2 nr_bytes unit_byte
LOCK2 bh
HALF_LOCKED2 &ctx->uring_lock

drivers/mtd/mtd_blkdevs.c mtd_blktrans_work() -> blk_update_request()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->bio 0,4096-ptr_max
PARAM_VALUE 0 req->bio->bi_bdev->bd_disk->zone_wplugs_worker_bio_done.wait.lock.dep_map->name 0-255
PARAM_VALUE 0 req->bio->bi_iter.bi_bvec_done 0-4294967294
PARAM_VALUE 0 req->mq_hctx 4096-ptr_max
PARAM_VALUE 0 req->mq_hctx->tags 4096-ptr_max
PARAM_VALUE 0 req->mq_hctx->tags->rqs 4096-ptr_max
PARAM_VALUE 0 req->q 4096-ptr_max
PARAM_VALUE 0 req->q->timeout.entry->pprev 4096-ptr_max
PARAM_VALUE 0 req->queuelist.next 4096-ptr_max
PARAM_VALUE 0 req->queuelist.next->next 4096-ptr_max
PARAM_VALUE 0 req->queuelist.next->prev 4096-ptr_max
PARAM_VALUE 0 req->queuelist.prev 4096-ptr_max
PARAM_VALUE 0 req->queuelist.prev->next 4096-ptr_max
PARAM_VALUE 0 req->queuelist.prev->prev 4096-ptr_max
PARAM_VALUE 0 req->state 1
PARAM_VALUE 1 error 0,10
DATA_SOURCE 1 error r do_blktrans_request
BIT_INFO 2 nr_bytes 0x0,0x7fffffff
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 __tag_set->srcu
HALF_LOCKED2 rcu_read

drivers/block/aoe/aoecmd.c aoe_end_request() -> blk_update_request()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->bio 4096-ptr_max
PARAM_VALUE 1 error 0,10
DATA_SOURCE 0 req $1
FUZZY_MAX 1 error 10
BIT_INFO 1 error 0x0,0xa
HARD_MAX 1 error 10
PREEMPT_ADD
UNITS 2 nr_bytes unit_byte