Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

drivers/nvme/host/core.c __nvme_submit_sync_cmd() -> nvme_init_request()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->__data_len 0
PARAM_VALUE 0 req->__sector u64max
PARAM_VALUE 0 req->bio 0
PARAM_VALUE 0 req->biotail 0
PARAM_VALUE 0 req->cmd_flags 34
PARAM_VALUE 0 req->crypt_ctx 0
PARAM_VALUE 0 req->crypt_keyslot 0
PARAM_VALUE 0 req->deadline 0
PARAM_VALUE 0 req->end_io 0
PARAM_VALUE 0 req->end_io_data 0
PARAM_VALUE 0 req->io_start_time_ns 0
PARAM_VALUE 0 req->mq_hctx 4096-ptr_max
PARAM_VALUE 0 req->nr_integrity_segments 0
PARAM_VALUE 0 req->nr_phys_segments 0
PARAM_VALUE 0 req->part 0
PARAM_VALUE 0 req->phys_gap_bit 0
PARAM_VALUE 0 req->q 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.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->ref.counter 1
PARAM_VALUE 0 req->rq_flags 0,16-u32max
PARAM_VALUE 0 req->stats_sectors 0
PARAM_VALUE 0 req->timeout 0
PARAM_VALUE 1 cmd 4096-ptr_max
PARAM_VALUE 1 cmd->auth_receive.al 0,4096
PARAM_VALUE 1 cmd->auth_receive.fctype 0,6
PARAM_VALUE 1 cmd->auth_send.fctype 0,5
PARAM_VALUE 1 cmd->common.cdw10 0-1073741822,3221225472,3221225474
PARAM_VALUE 1 cmd->common.flags 0-63
PARAM_VALUE 1 cmd->common.opcode 0,13-14,17,21,129-130
PARAM_VALUE 1 cmd->create_sq.sq_flags 0-1,5
PARAM_VALUE 1 cmd->dsm.nr 0
PARAM_VALUE 1 cmd->dsm.nsid 0
PARAM_VALUE 1 cmd->fabrics.fctype 0
PARAM_VALUE 1 cmd->imr.mo 0-1
PARAM_VALUE 1 cmd->imr.mos 0
PARAM_VALUE 1 cmd->imr.numd 0,1011
PARAM_VALUE 1 cmd->prop_get.attrib 0-255
PARAM_VALUE 1 cmd->prop_set.value 0,2-u32max
PARAM_VALUE 1 cmd->rw.cdw2 0
PARAM_VALUE 1 cmd->rw.cdw3 0
PARAM_VALUE 1 cmd->rw.flags 0
PARAM_VALUE 1 cmd->rw.lbat 0
PARAM_VALUE 1 cmd->rw.lbatm 0
PARAM_VALUE 1 cmd->rw.nsid 0
PARAM_VALUE 1 cmd->rw.slba 0
PARAM_VALUE 1 cmd->zmr.numd 0,31-67107839
PARAM_VALUE 1 cmd->zmr.pr 0-1
PARAM_VALUE 1 cmd->zmr.zra 0
PARAM_VALUE 1 cmd->zms.nsid 0
PARAM_VALUE 1 cmd->zms.slba 0
PARAM_VALUE 1 cmd->zms.zsa 0
CAPPED_DATA 0 req->q 1
DATA_SOURCE 1 cmd $1
HARD_MAX 1 cmd->imr.mo 1
HARD_MAX 1 cmd->imr.numd 1011
HARD_MAX 1 cmd->zmr.pr 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 1 cmd->connect.sqsize 0-u16max[c]
HOST_DATA 1 cmd->create_cq.cqid 0-u16max[c]
HOST_DATA 1 cmd->create_cq.irq_vector 0-s16max[c]
HOST_DATA 1 cmd->create_sq.cqid 0-u16max[c]
HOST_DATA 1 cmd->create_sq.sqid 0-u16max[c]
HOST_DATA 1 cmd->dbbuf.prp1 0-u64max
HOST_DATA 1 cmd->dbbuf.prp2 0-u64max
HOST_DATA 1 cmd->delete_queue.qid 0-u16max[c]
HOST_DATA 1 cmd->features.dword12 0-u32max
HOST_DATA 1 cmd->features.dword13 0-u32max
HOST_DATA 1 cmd->features.dword14 0-u32max[c]
HOST_DATA 1 cmd->features.dword15 0
HOST_DATA 1 cmd->prop_set.value 0,2-u32max[c]
USER_DATA 1 cmd->common.cdw10 0-1,8-9,256-1544,3221225472,3221225474[c][u]
USER_DATA 1 cmd->common.flags 0[c]
USER_DATA 1 cmd->features.dword11 0-u32max[c][u]
USER_DATA 1 cmd->zmr.numd 31-67107838[c]
USER_DATA 1 cmd->zmr.slba 0-u64max[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
NO_OVERFLOW_SIMPLE 1 cmd->connect.qid
NO_OVERFLOW_SIMPLE 1 cmd->features.dword15
HALF_LOCKED2 &dev->dev_lock

drivers/nvme/host/core.c nvme_keep_alive_work() -> nvme_init_request()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->__data_len 0
PARAM_VALUE 0 req->__sector u64max
PARAM_VALUE 0 req->bio 0
PARAM_VALUE 0 req->biotail 0
PARAM_VALUE 0 req->mq_hctx->type 0-2
PARAM_VALUE 0 req->phys_gap_bit 0
PARAM_VALUE 0 req->q 4096-ptr_max
PARAM_VALUE 0 req->queuelist.next->next 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 1 cmd 4096-ptr_max
DATA_SOURCE 0 req r blk_mq_alloc_request
NOCHECK_CALL
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 &pool->lock

drivers/nvme/host/ioctl.c nvme_alloc_user_request() -> nvme_init_request()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->__data_len 0
PARAM_VALUE 0 req->__sector u64max
PARAM_VALUE 0 req->bio 0
PARAM_VALUE 0 req->biotail 0
PARAM_VALUE 0 req->mq_hctx->type 0-2
PARAM_VALUE 0 req->phys_gap_bit 0
PARAM_VALUE 0 req->q 4096-ptr_max
PARAM_VALUE 0 req->queuelist.next->next 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 1 cmd 1812795278692827136,4587513034792280064,5385778911610314752,8817291235396108288
PARAM_VALUE 1 cmd->common.flags 0-63
DATA_SOURCE 0 req r blk_mq_alloc_request
DATA_SOURCE 1 cmd $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 1 cmd->common.cdw10 0-u32max
USER_DATA 1 cmd->common.cdw11 0-u32max
USER_DATA 1 cmd->common.cdw12 0-u32max
USER_DATA 1 cmd->common.cdw13 0-u32max
USER_DATA 1 cmd->common.cdw14 0-u32max
USER_DATA 1 cmd->common.cdw15 0-u32max
USER_DATA 1 cmd->common.flags 0
USER_DATA 1 cmd->common.nsid 0-u32max
USER_DATA 1 cmd->common.opcode 0-255
USER_DATA 1 cmd->rw.control 8192-u16max
USER_DATA 1 cmd->rw.dsmgmt 0-u32max
USER_DATA 1 cmd->rw.flags 0
USER_DATA 1 cmd->rw.lbat 0-u16max
USER_DATA 1 cmd->rw.lbatm 0-u16max
USER_DATA 1 cmd->rw.length 0-u16max
USER_DATA 1 cmd->rw.opcode 1-2,5
USER_DATA 1 cmd->rw.reftag 0-u32max
USER_DATA 1 cmd->rw.slba 0-u64max
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

drivers/nvme/host/pci.c nvme_delete_queue() -> nvme_init_request()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->__data_len 0
PARAM_VALUE 0 req->__sector u64max
PARAM_VALUE 0 req->bio 0
PARAM_VALUE 0 req->biotail 0
PARAM_VALUE 0 req->mq_hctx->type 0-2
PARAM_VALUE 0 req->phys_gap_bit 0
PARAM_VALUE 0 req->q 4096-ptr_max
PARAM_VALUE 0 req->queuelist.next->next 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 1 cmd 4554373203515691008
PARAM_VALUE 1 cmd->common.flags 0
PARAM_VALUE 1 cmd->delete_queue.opcode 0,4
PARAM_VALUE 1 cmd->dsm.nr 0
PARAM_VALUE 1 cmd->dsm.nsid 0
PARAM_VALUE 1 cmd->imr.mo 0
PARAM_VALUE 1 cmd->imr.mos 0
PARAM_VALUE 1 cmd->imr.nsid 0
PARAM_VALUE 1 cmd->imr.numd 0
PARAM_VALUE 1 cmd->rw.cdw2 0
PARAM_VALUE 1 cmd->rw.cdw3 0
PARAM_VALUE 1 cmd->rw.flags 0
PARAM_VALUE 1 cmd->rw.lbat 0
PARAM_VALUE 1 cmd->rw.lbatm 0
PARAM_VALUE 1 cmd->rw.nsid 0
PARAM_VALUE 1 cmd->rw.slba 0
PARAM_VALUE 1 cmd->zmr.nsid 0
PARAM_VALUE 1 cmd->zmr.numd 0
PARAM_VALUE 1 cmd->zmr.pr 0
PARAM_VALUE 1 cmd->zmr.slba 0
PARAM_VALUE 1 cmd->zmr.zra 0
PARAM_VALUE 1 cmd->zms.nsid 0
PARAM_VALUE 1 cmd->zms.slba 0
PARAM_VALUE 1 cmd->zms.zsa 0
DATA_SOURCE 0 req r blk_mq_alloc_request
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
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 &dev->shutdown_lock
HALF_LOCKED2 &pool->lock

drivers/nvme/host/pci.c nvme_timeout() -> nvme_init_request()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->__data_len 0
PARAM_VALUE 0 req->__sector u64max
PARAM_VALUE 0 req->bio 0
PARAM_VALUE 0 req->biotail 0
PARAM_VALUE 0 req->mq_hctx->type 0-2
PARAM_VALUE 0 req->phys_gap_bit 0
PARAM_VALUE 0 req->q 4096-ptr_max
PARAM_VALUE 0 req->queuelist.next->next 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 1 cmd 5553647324000288768
PARAM_VALUE 1 cmd->abort.opcode 8
PARAM_VALUE 1 cmd->abort.sqid 1-u16max
PARAM_VALUE 1 cmd->common.flags 0
PARAM_VALUE 1 cmd->dsm.nr 0
PARAM_VALUE 1 cmd->dsm.nsid 0
PARAM_VALUE 1 cmd->imr.mo 0
PARAM_VALUE 1 cmd->imr.mos 0
PARAM_VALUE 1 cmd->imr.nsid 0
PARAM_VALUE 1 cmd->imr.numd 0
PARAM_VALUE 1 cmd->rw.cdw2 0
PARAM_VALUE 1 cmd->rw.cdw3 0
PARAM_VALUE 1 cmd->rw.flags 0
PARAM_VALUE 1 cmd->rw.lbat 0
PARAM_VALUE 1 cmd->rw.lbatm 0
PARAM_VALUE 1 cmd->rw.nsid 0
PARAM_VALUE 1 cmd->rw.slba 0
PARAM_VALUE 1 cmd->zmr.nsid 0
PARAM_VALUE 1 cmd->zmr.numd 0
PARAM_VALUE 1 cmd->zmr.pr 0
PARAM_VALUE 1 cmd->zmr.slba 0
PARAM_VALUE 1 cmd->zmr.zra 0
PARAM_VALUE 1 cmd->zms.nsid 0
PARAM_VALUE 1 cmd->zms.slba 0
PARAM_VALUE 1 cmd->zms.zsa 0
DATA_SOURCE 0 req r blk_mq_alloc_request
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
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 &khd->lock

drivers/nvme/target/passthru.c nvmet_passthru_execute_cmd() -> nvme_init_request()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->__data_len 0
PARAM_VALUE 0 req->__sector u64max
PARAM_VALUE 0 req->bio 0
PARAM_VALUE 0 req->biotail 0
PARAM_VALUE 0 req->mq_hctx->type 0-2
PARAM_VALUE 0 req->phys_gap_bit 0
PARAM_VALUE 0 req->q 4096-ptr_max
PARAM_VALUE 0 req->queuelist.next->next 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 1 cmd 4096-ptr_max
DATA_SOURCE 0 req r blk_mq_alloc_request
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
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 &pool->lock