Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

drivers/scsi/scsi_bsg.c scsi_bsg_map_user_buffer() -> blk_rq_map_user_iov()

Type Parameter Key Value
PARAM_VALUE 0 q 4096-ptr_max
PARAM_VALUE 1 rq 4096-ptr_max
PARAM_VALUE 1 rq->__data_len 0
PARAM_VALUE 1 rq->__sector u64max
PARAM_VALUE 1 rq->bio 0
PARAM_VALUE 1 rq->biotail 0
PARAM_VALUE 1 rq->mq_hctx->type 0-2
PARAM_VALUE 1 rq->phys_gap_bit 0
PARAM_VALUE 1 rq->q 4096-ptr_max
PARAM_VALUE 1 rq->queuelist.next->next 4096-ptr_max
PARAM_VALUE 1 rq->queuelist.prev->next 4096-ptr_max
PARAM_VALUE 1 rq->queuelist.prev->prev 4096-ptr_max
PARAM_VALUE 2 map_data 0
PARAM_VALUE 3 iter 6944560901205405696
PARAM_VALUE 3 iter->__iov 4096-u64max
PARAM_VALUE 3 iter->bvec 4096-u64max
PARAM_VALUE 3 iter->folioq 1-u64max
PARAM_VALUE 4 gfp_mask 3264,10240
DATA_SOURCE 1 rq $0
DATA_SOURCE 4 gfp_mask $3
FUZZY_MAX 4 gfp_mask 10240
BIT_INFO 4 gfp_mask 0x800,0x2cc0
HARD_MAX 4 gfp_mask 10240
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 q->async_depth
NO_OVERFLOW_SIMPLE 0 q->limits.discard_granularity
NO_OVERFLOW_SIMPLE 0 q->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 0 q->limits.max_hw_discard_sectors
NO_OVERFLOW_SIMPLE 0 q->limits.max_open_zones
NO_OVERFLOW_SIMPLE 0 q->limits.zone_write_granularity
NO_OVERFLOW_SIMPLE 0 q->nr_hw_queues
NO_OVERFLOW_SIMPLE 0 q->nr_requests
NO_OVERFLOW_SIMPLE 0 q->q_usage_counter.percpu_count_ptr
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->async_depth
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->limits.discard_granularity
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->limits.max_hw_discard_sectors
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->limits.max_open_zones
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->limits.zone_write_granularity
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->nr_hw_queues
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->nr_requests
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->q_usage_counter.percpu_count_ptr
NO_OVERFLOW_SIMPLE 1 rq->q->async_depth
NO_OVERFLOW_SIMPLE 1 rq->q->limits.discard_granularity
NO_OVERFLOW_SIMPLE 1 rq->q->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 1 rq->q->limits.max_hw_discard_sectors
NO_OVERFLOW_SIMPLE 1 rq->q->limits.max_open_zones
NO_OVERFLOW_SIMPLE 1 rq->q->limits.zone_write_granularity
NO_OVERFLOW_SIMPLE 1 rq->q->nr_hw_queues
NO_OVERFLOW_SIMPLE 1 rq->q->nr_requests
NO_OVERFLOW_SIMPLE 1 rq->q->q_usage_counter.percpu_count_ptr
HALF_LOCKED2 &ctx->uring_lock

drivers/nvme/host/ioctl.c nvme_map_user_request() -> blk_rq_map_user_iov()

Type Parameter Key Value
PARAM_VALUE 0 q 4096-ptr_max
PARAM_VALUE 0 q->queuedata 0,4096-ptr_max
PARAM_VALUE 1 rq 4096-ptr_max
PARAM_VALUE 1 rq->__data_len 0
PARAM_VALUE 1 rq->__sector u64max
PARAM_VALUE 1 rq->bio 0
PARAM_VALUE 1 rq->biotail 0
PARAM_VALUE 1 rq->cmd_flags 0,1024-u32max
PARAM_VALUE 1 rq->mq_hctx 4096-ptr_max
PARAM_VALUE 1 rq->mq_hctx->type 0-2
PARAM_VALUE 1 rq->phys_gap_bit 0
PARAM_VALUE 1 rq->q 4096-ptr_max
PARAM_VALUE 1 rq->queuelist.next->next 4096-ptr_max
PARAM_VALUE 1 rq->queuelist.prev->next 4096-ptr_max
PARAM_VALUE 1 rq->queuelist.prev->prev 4096-ptr_max
PARAM_VALUE 1 rq->rq_flags 0,8-u32max
PARAM_VALUE 1 rq->timeout 0-536870912,4294967294
PARAM_VALUE 2 map_data 0
PARAM_VALUE 3 iter 1619417322542931968
PARAM_VALUE 4 gfp_mask 3264
BUF_SIZE 3 iter 0,40
BUF_SIZE 3 iter 0,40
DATA_SOURCE 1 rq $0
DATA_SOURCE 3 iter $5
FUZZY_MAX 1 rq->timeout 0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 q->async_depth
NO_OVERFLOW_SIMPLE 0 q->limits.discard_granularity
NO_OVERFLOW_SIMPLE 0 q->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 0 q->limits.max_hw_discard_sectors
NO_OVERFLOW_SIMPLE 0 q->limits.max_open_zones
NO_OVERFLOW_SIMPLE 0 q->limits.zone_write_granularity
NO_OVERFLOW_SIMPLE 0 q->nr_hw_queues
NO_OVERFLOW_SIMPLE 0 q->nr_requests
NO_OVERFLOW_SIMPLE 0 q->q_usage_counter.percpu_count_ptr
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->async_depth
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->limits.discard_granularity
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->limits.max_hw_discard_sectors
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->limits.max_open_zones
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->limits.zone_write_granularity
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->nr_hw_queues
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->nr_requests
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->q_usage_counter.percpu_count_ptr
NO_OVERFLOW_SIMPLE 1 rq->q->async_depth
NO_OVERFLOW_SIMPLE 1 rq->q->limits.discard_granularity
NO_OVERFLOW_SIMPLE 1 rq->q->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 1 rq->q->limits.max_hw_discard_sectors
NO_OVERFLOW_SIMPLE 1 rq->q->limits.max_open_zones
NO_OVERFLOW_SIMPLE 1 rq->q->limits.zone_write_granularity
NO_OVERFLOW_SIMPLE 1 rq->q->nr_hw_queues
NO_OVERFLOW_SIMPLE 1 rq->q->nr_requests
NO_OVERFLOW_SIMPLE 1 rq->q->q_usage_counter.percpu_count_ptr
HALF_LOCKED2 &ctx->uring_lock

block/blk-map.c blk_rq_map_user() -> blk_rq_map_user_iov()

Type Parameter Key Value
PARAM_VALUE 0 q 4096-ptr_max
PARAM_VALUE 0 q->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 1 rq 4096-ptr_max
PARAM_VALUE 1 rq->__data_len 0
PARAM_VALUE 1 rq->__sector u64max
PARAM_VALUE 1 rq->bio 0
PARAM_VALUE 1 rq->biotail 0
PARAM_VALUE 1 rq->mq_hctx->type 0-2
PARAM_VALUE 1 rq->phys_gap_bit 0
PARAM_VALUE 1 rq->q 4096-ptr_max
PARAM_VALUE 1 rq->queuelist.next->next 4096-ptr_max
PARAM_VALUE 1 rq->queuelist.prev->next 4096-ptr_max
PARAM_VALUE 1 rq->queuelist.prev->prev 4096-ptr_max
PARAM_VALUE 2 map_data 0,4096-ptr_max
PARAM_VALUE 3 iter 994473194779484160
PARAM_VALUE 4 gfp_mask 3264,10240
BUF_SIZE 1 rq->end_io_data (-1),5504
BUF_SIZE 2 map_data (-1)-0,24
BUF_SIZE 2 map_data (-1)-0,24
BUF_SIZE 2 map_data->pages s32min-(-1),1-s32max
DATA_SOURCE 0 q $0
DATA_SOURCE 1 rq $1
DATA_SOURCE 2 map_data $2
DATA_SOURCE 4 gfp_mask $5
FUZZY_MAX 4 gfp_mask 10240
BIT_INFO 4 gfp_mask 0x800,0x2cc0
HARD_MAX 4 gfp_mask 10240
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 q->async_depth
NO_OVERFLOW_SIMPLE 0 q->limits.discard_granularity
NO_OVERFLOW_SIMPLE 0 q->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 0 q->limits.max_hw_discard_sectors
NO_OVERFLOW_SIMPLE 0 q->limits.max_open_zones
NO_OVERFLOW_SIMPLE 0 q->limits.zone_write_granularity
NO_OVERFLOW_SIMPLE 0 q->nr_hw_queues
NO_OVERFLOW_SIMPLE 0 q->nr_requests
NO_OVERFLOW_SIMPLE 0 q->q_usage_counter.percpu_count_ptr
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->async_depth
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->limits.discard_granularity
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->limits.max_hw_discard_sectors
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->limits.max_open_zones
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->limits.physical_block_size
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->limits.zone_write_granularity
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->nr_hw_queues
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->nr_requests
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->q_usage_counter.percpu_count_ptr
NO_OVERFLOW_SIMPLE 1 rq->q->async_depth
NO_OVERFLOW_SIMPLE 1 rq->q->limits.discard_granularity
NO_OVERFLOW_SIMPLE 1 rq->q->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 1 rq->q->limits.max_hw_discard_sectors
NO_OVERFLOW_SIMPLE 1 rq->q->limits.max_open_zones
NO_OVERFLOW_SIMPLE 1 rq->q->limits.zone_write_granularity
NO_OVERFLOW_SIMPLE 1 rq->q->nr_hw_queues
NO_OVERFLOW_SIMPLE 1 rq->q->nr_requests
NO_OVERFLOW_SIMPLE 1 rq->q->q_usage_counter.percpu_count_ptr
HALF_LOCKED2 &cd->lock

block/blk-map.c blk_rq_map_user_io() -> blk_rq_map_user_iov()

Type Parameter Key Value
PARAM_VALUE 0 q 4096-ptr_max
PARAM_VALUE 1 rq 4096-ptr_max
PARAM_VALUE 1 rq->__data_len 0
PARAM_VALUE 1 rq->__sector u64max
PARAM_VALUE 1 rq->bio 0
PARAM_VALUE 1 rq->biotail 0
PARAM_VALUE 1 rq->mq_hctx->type 0-2
PARAM_VALUE 1 rq->phys_gap_bit 0
PARAM_VALUE 1 rq->q 4096-ptr_max
PARAM_VALUE 1 rq->queuelist.next->next 4096-ptr_max
PARAM_VALUE 1 rq->queuelist.prev->next 4096-ptr_max
PARAM_VALUE 1 rq->queuelist.prev->prev 4096-ptr_max
PARAM_VALUE 2 map_data 0,1526674389281034240
PARAM_VALUE 2 map_data->offset 0
PARAM_VALUE 2 map_data->page_order 0-32
PARAM_VALUE 2 map_data->pages 0,16,4096-ptr_max
PARAM_VALUE 3 iter 192091742437986304
PARAM_VALUE 4 gfp_mask 3264
BUF_SIZE 1 rq->end_io_data (-1),5504
BUF_SIZE 2 map_data (-1)-0,24
BUF_SIZE 2 map_data (-1)-0,24
BUF_SIZE 2 map_data->pages s32min-(-1),1-s32max
DATA_SOURCE 1 rq $0
DATA_SOURCE 2 map_data $1
DATA_SOURCE 4 gfp_mask $4
BIT_INFO 2 map_data 0x0,0x152fd644b4c85000
BIT_INFO 2 map_data 0x0,0x152fd644b4c85000
RX_PATH
TASK_NOT_RUNNING
USER_DATA 3 iter->count 0-s32max[c]
NO_OVERFLOW_SIMPLE 0 q->async_depth
NO_OVERFLOW_SIMPLE 0 q->limits.discard_granularity
NO_OVERFLOW_SIMPLE 0 q->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 0 q->limits.max_hw_discard_sectors
NO_OVERFLOW_SIMPLE 0 q->limits.max_open_zones
NO_OVERFLOW_SIMPLE 0 q->limits.zone_write_granularity
NO_OVERFLOW_SIMPLE 0 q->nr_hw_queues
NO_OVERFLOW_SIMPLE 0 q->nr_requests
NO_OVERFLOW_SIMPLE 0 q->q_usage_counter.percpu_count_ptr
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->async_depth
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->limits.discard_granularity
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->limits.max_hw_discard_sectors
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->limits.max_open_zones
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->limits.zone_write_granularity
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->nr_hw_queues
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->nr_requests
NO_OVERFLOW_SIMPLE 1 rq->elv.icq->q->q_usage_counter.percpu_count_ptr
NO_OVERFLOW_SIMPLE 1 rq->q->async_depth
NO_OVERFLOW_SIMPLE 1 rq->q->limits.discard_granularity
NO_OVERFLOW_SIMPLE 1 rq->q->limits.max_discard_sectors
NO_OVERFLOW_SIMPLE 1 rq->q->limits.max_hw_discard_sectors
NO_OVERFLOW_SIMPLE 1 rq->q->limits.max_open_zones
NO_OVERFLOW_SIMPLE 1 rq->q->limits.zone_write_granularity
NO_OVERFLOW_SIMPLE 1 rq->q->nr_hw_queues
NO_OVERFLOW_SIMPLE 1 rq->q->nr_requests
NO_OVERFLOW_SIMPLE 1 rq->q->q_usage_counter.percpu_count_ptr