Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 18 files:
- block/blk-mq.c, line 1327
- block/bsg-lib.c, line 197
- drivers/block/loop.c
- drivers/block/mtip32xx/mtip32xx.c
- drivers/block/nbd.c
- drivers/block/null_blk/main.c
- drivers/block/rnbd/rnbd-clt.c, line 389
- drivers/block/virtio_blk.c, line 366
- drivers/block/xen-blkfront.c, line 1647
- drivers/block/zloop.c
- drivers/md/dm-rq.c, line 288
- drivers/mmc/core/block.c
- drivers/nvme/host/apple.c, line 945
- drivers/nvme/host/core.c, line 549
- drivers/nvme/host/fabrics.h, line 209
- drivers/s390/block/dasd.c, line 2812
- drivers/s390/block/scm_blk.c, line 258
- drivers/scsi/scsi_lib.c, line 1780
Smatch caller information:
drivers/md/dm-rq.c dm_complete_request() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | rq | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/block/zloop.c zloop_handle_cmd() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rq | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q | 4096-ptr_max |
| DATA_SOURCE | 0 | rq | r blk_mq_rq_from_pdu |
| BIT_INFO | 0 | rq->cmd_flags | 0x0,0xffdfffff |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
drivers/block/zloop.c zloop_put_cmd() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rq | 4096-ptr_max |
| DATA_SOURCE | 0 | rq | r blk_mq_rq_from_pdu |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
drivers/mmc/core/block.c mmc_blk_cqe_req_done() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rq | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q | 4096-ptr_max |
| DATA_SOURCE | 0 | rq | r mmc_queue_req_to_req |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &host->mmc_serializer |
drivers/mmc/core/block.c mmc_blk_hsq_req_done() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rq | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q | 4096-ptr_max |
| DATA_SOURCE | 0 | rq | r mmc_queue_req_to_req |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &host->mmc_serializer |
drivers/mmc/core/block.c mmc_blk_mq_post_req() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rq | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q | 4096-ptr_max |
| DATA_SOURCE | 0 | rq | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &host->mmc_serializer |
drivers/scsi/scsi_lib.c scsi_done_internal() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | rq | r scsi_cmd_to_rq |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | adapter->scsi_host->host_lock | ||
| HALF_LOCKED2 | irq | ||
| HALF_LOCKED2 | irq_flags | ||
| HALF_LOCKED2 | shost->host_lock |
drivers/block/rnbd/rnbd-clt.c msg_io_conf() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rq | 4096-ptr_max |
| NOCHECK_CALL |
drivers/nvme/host/core.c nvme_cancel_request() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rq | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->ref.counter | 0-s32max |
| PARAM_VALUE | 0 | rq->state | 1 |
| DATA_SOURCE | 0 | rq | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &khd->lock |
drivers/block/loop.c lo_rw_aio_do_completion() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rq | 4096-ptr_max |
| DATA_SOURCE | 0 | rq | r blk_mq_rq_from_pdu |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
drivers/block/loop.c loop_handle_cmd() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rq | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q->queuedata | 4096-ptr_max |
| DATA_SOURCE | 0 | rq | r blk_mq_rq_from_pdu |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
drivers/nvme/host/rdma.c nvmf_complete_timed_out_request() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rq | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q->mq_ops | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q->mq_ops->timeout | 1-u64max |
| PARAM_VALUE | 0 | rq->ref.counter | 0-s32max |
| PARAM_VALUE | 0 | rq->rq_flags | 0,16384-u32max |
| PARAM_VALUE | 0 | rq->state | 1 |
| CAPPED_DATA | 0 | rq->q | 1 |
| CAPPED_DATA | 0 | rq->tag | 1 |
| DATA_SOURCE | 0 | rq | $0 |
| BIT_INFO | 0 | rq->rq_flags | 0x4000,0xffffffffffffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &khd->lock |
drivers/block/null_blk/main.c null_timeout_rq() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rq | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->mq_hctx | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q->mq_ops | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q->mq_ops->timeout | 1-u64max |
| PARAM_VALUE | 0 | rq->ref.counter | 0-s32max |
| PARAM_VALUE | 0 | rq->rq_flags | 0,16384-u32max |
| PARAM_VALUE | 0 | rq->state | 1 |
| CAPPED_DATA | 0 | rq->q | 1 |
| CAPPED_DATA | 0 | rq->tag | 1 |
| DATA_SOURCE | 0 | rq | $0 |
| BIT_INFO | 0 | rq->rq_flags | 0x4000,0xffffffffffffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &khd->lock |
drivers/block/null_blk/main.c nullb_complete_cmd() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rq | 4096-ptr_max |
| DATA_SOURCE | 0 | rq | r blk_mq_rq_from_pdu |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | __tag_set->srcu | ||
| HALF_LOCKED2 | rcu_read |
drivers/nvme/host/apple.c apple_nvme_timeout() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rq | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q->mq_ops | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q->mq_ops->timeout | 1-u64max |
| PARAM_VALUE | 0 | rq->ref.counter | 0-s32max |
| PARAM_VALUE | 0 | rq->rq_flags | 0,16384-u32max |
| PARAM_VALUE | 0 | rq->state | 1 |
| CAPPED_DATA | 0 | rq->q | 1 |
| CAPPED_DATA | 0 | rq->tag | 1 |
| DATA_SOURCE | 0 | rq | $0 |
| BIT_INFO | 0 | rq->rq_flags | 0x4000,0xffffffffffffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &khd->lock |
drivers/block/virtio_blk.c virtblk_done() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rq | 4096-ptr_max |
| DATA_SOURCE | 0 | rq | r blk_mq_rq_from_pdu |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | flags | ||
| HALF_LOCKED2 | &desc->request_mutex | ||
| HALF_LOCKED2 | &vp_dev->lock | ||
| HALF_LOCKED2 | _T->lock | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | irq |
drivers/nvme/host/tcp.c nvmf_complete_timed_out_request() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rq | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q->mq_ops | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q->mq_ops->timeout | 1-u64max |
| PARAM_VALUE | 0 | rq->ref.counter | 0-s32max |
| PARAM_VALUE | 0 | rq->rq_flags | 0,16384-u32max |
| PARAM_VALUE | 0 | rq->state | 1 |
| CAPPED_DATA | 0 | rq->q | 1 |
| CAPPED_DATA | 0 | rq->tag | 1 |
| DATA_SOURCE | 0 | rq | $0 |
| BIT_INFO | 0 | rq->rq_flags | 0x4000,0xffffffffffffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &khd->lock |
drivers/block/mtip32xx/mtip32xx.c mtip_cmd_timeout() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rq | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q->mq_ops | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q->mq_ops->timeout | 1-u64max |
| PARAM_VALUE | 0 | rq->ref.counter | 0-s32max |
| PARAM_VALUE | 0 | rq->rq_flags | 0,16384-u32max |
| PARAM_VALUE | 0 | rq->state | 1 |
| CAPPED_DATA | 0 | rq->q | 1 |
| CAPPED_DATA | 0 | rq->tag | 1 |
| DATA_SOURCE | 0 | rq | $0 |
| BIT_INFO | 0 | rq->rq_flags | 0x4000,0xffffffffffffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &khd->lock |
drivers/block/mtip32xx/mtip32xx.c mtip_complete_command() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rq | 4096-ptr_max |
| DATA_SOURCE | 0 | rq | r blk_mq_rq_from_pdu |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/block/nbd.c nbd_clear_req() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rq | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->ref.counter | 0-s32max |
| PARAM_VALUE | 0 | rq->state | 0-1,3-u32max |
| DATA_SOURCE | 0 | rq | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &khd->lock |
drivers/block/nbd.c nbd_pending_cmd_work() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| LOCK2 | &cmd->lock | ||
| LOCK2 | &nsock->tx_lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct nbd_cmd)->lock | ||
| TYPE_LOCK | (struct nbd_sock)->tx_lock |
drivers/block/nbd.c nbd_xmit_timeout() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rq | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q->mq_ops | 4096-ptr_max |
| PARAM_VALUE | 0 | rq->q->mq_ops->timeout | 1-u64max |
| PARAM_VALUE | 0 | rq->ref.counter | 0-s32max |
| PARAM_VALUE | 0 | rq->rq_flags | 0,16384-u32max |
| PARAM_VALUE | 0 | rq->state | 1 |
| CAPPED_DATA | 0 | rq->q | 1 |
| CAPPED_DATA | 0 | rq->tag | 1 |
| DATA_SOURCE | 0 | rq | $0 |
| BIT_INFO | 0 | rq->rq_flags | 0x4000,0xffffffffffffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &khd->lock |
drivers/block/nbd.c recv_work() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rq | 4096-ptr_max |
| DATA_SOURCE | 0 | rq | r blk_mq_rq_from_pdu |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
block/bsg-lib.c bsg_job_done() -> blk_mq_complete_request()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rq | 4096-ptr_max |
| DATA_SOURCE | 0 | rq | r blk_mq_rq_from_pdu |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &lport->lp_mutex |