Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 5 files:
- drivers/nvme/host/core.c, line 267
- drivers/nvme/host/fc.c
- drivers/nvme/host/rdma.c
- drivers/nvme/host/tcp.c
- drivers/nvme/target/loop.c
Smatch caller information:
drivers/nvme/target/loop.c nvme_loop_cleanup_module() -> nvme_delete_ctrl()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ctrl | 4096-ptr_max |
| NOCHECK_CALL | |||
| LOCK2 | global &nvme_loop_ctrl_mutex |
drivers/nvme/target/loop.c nvme_loop_delete_ctrl() -> nvme_delete_ctrl()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ctrl | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | global &nvme_loop_ctrl_mutex | ||
| HALF_LOCKED2 | &buffer->mutex | ||
| HALF_LOCKED2 | &frag->frag_sem | ||
| HALF_LOCKED2 | &subsys->lock | ||
| HALF_LOCKED2 | global &nvmet_config_sem |
drivers/nvme/host/fc.c nvme_fc_delete_controllers() -> nvme_delete_ctrl()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ctrl | 4096-ptr_max |
| PARAM_VALUE | 0 | ctrl->device | 0,4096-ptr_max |
| PREEMPT_ADD | <- disables preempt | ||
| NOCHECK_CALL | |||
| LOCK2 | &rport->lock | ||
| LOCK2 | flags | ||
| LOCK2 | global &nvme_fc_lock | ||
| TYPE_LOCK | (struct nvme_fc_rport)->lock |
drivers/nvme/host/fc.c nvme_fc_reconnect_or_delete() -> nvme_delete_ctrl()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ctrl | 4096-ptr_max |
| PARAM_VALUE | 0 | ctrl->device | 0,4096-ptr_max |
| PARAM_VALUE | 0 | ctrl->opts | 4096-ptr_max |
| PARAM_VALUE | 0 | ctrl->state | 3 |
| HALF_LOCKED2 | &pool->lock |
drivers/nvme/host/fc.c nvme_fc_unregister_remoteport() -> nvme_delete_ctrl()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ctrl | 4096-ptr_max |
| PARAM_VALUE | 0 | ctrl->device | 0,4096-ptr_max |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &rport->lock | ||
| LOCK2 | flags | ||
| HALF_LOCKED2 | &fnic->fnic_lock | ||
| TYPE_LOCK | (struct nvme_fc_rport)->lock |
drivers/nvme/host/rdma.c nvme_rdma_cleanup_module() -> nvme_delete_ctrl()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ctrl | 4096-ptr_max |
| NOCHECK_CALL | |||
| LOCK2 | global &nvme_rdma_ctrl_mutex |
drivers/nvme/host/rdma.c nvme_rdma_reconnect_or_remove() -> nvme_delete_ctrl()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ctrl | 4096-ptr_max |
| PARAM_VALUE | 0 | ctrl->state | 3 |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
drivers/nvme/host/rdma.c nvme_rdma_remove_one() -> nvme_delete_ctrl()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ctrl | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | global &nvme_rdma_ctrl_mutex | ||
| HALF_LOCKED2 | &ib_device->unregistration_lock |
drivers/nvme/host/tcp.c nvme_tcp_cleanup_module() -> nvme_delete_ctrl()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ctrl | 4096-ptr_max |
| NOCHECK_CALL | |||
| LOCK2 | global &nvme_tcp_ctrl_mutex |
drivers/nvme/host/tcp.c nvme_tcp_reconnect_or_remove() -> nvme_delete_ctrl()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ctrl | 4096-ptr_max |
| PARAM_VALUE | 0 | ctrl->admin_q->dev->power.wakeirq->status | 0-4294967295 |
| PARAM_VALUE | 0 | ctrl->connect_q->dev->power.wakeirq->status | 0-4294967295 |
| PARAM_VALUE | 0 | ctrl->device | 0,4096-ptr_max |
| PARAM_VALUE | 0 | ctrl->device->bus | 0,4096-ptr_max |
| PARAM_VALUE | 0 | ctrl->device->class | 0,4096-ptr_max |
| PARAM_VALUE | 0 | ctrl->device->driver | 0,4096-ptr_max |
| PARAM_VALUE | 0 | ctrl->device->power.wakeirq->status | 0-4294967295 |
| PARAM_VALUE | 0 | ctrl->fabrics_q->dev->power.wakeirq->status | 0-4294967295 |
| PARAM_VALUE | 0 | ctrl->ops->reg_read32 | 4096-ptr_max |
| PARAM_VALUE | 0 | ctrl->ops->reg_read64 | 4096-ptr_max |
| PARAM_VALUE | 0 | ctrl->ops->reg_write32 | 4096-ptr_max |
| PARAM_VALUE | 0 | ctrl->ops->stop_ctrl | 0,4096-ptr_max |
| PARAM_VALUE | 0 | ctrl->state | 3 |
| PARAM_VALUE | 0 | ctrl->tagset->update_nr_hwq_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | ctrl->tagset->update_nr_hwq_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | *ctrl->subsys->firmware_rev | 0-255 |
| BUF_SIZE | 0 | ctrl | (-1),5640 |
| BUF_SIZE | 0 | ctrl | (-1),5640 |
| DATA_SOURCE | 0 | ctrl | $0 |
| NOCHECK_CALL | |||
| HOST_DATA | 0 | ctrl->cap | 0-u64max |
| HOST_DATA | 0 | ctrl->vs | 0-u32max |
| NO_OVERFLOW_SIMPLE | 0 | ctrl->ana_log_size | |
| NO_OVERFLOW_SIMPLE | 0 | ctrl->connect_q->async_depth | |
| NO_OVERFLOW_SIMPLE | 0 | ctrl->connect_q->limits.max_discard_sectors | |
| NO_OVERFLOW_SIMPLE | 0 | ctrl->connect_q->limits.max_open_zones | |
| NO_OVERFLOW_SIMPLE | 0 | ctrl->connect_q->nr_requests | |
| NO_OVERFLOW_SIMPLE | 0 | ctrl->connect_q->tag_set->nr_hw_queues | |
| NO_OVERFLOW_SIMPLE | 0 | ctrl->connect_q->tag_set->queue_depth | |
| NO_OVERFLOW_SIMPLE | 0 | ctrl->tagset->queue_depth | |
| HALF_LOCKED2 | &pool->lock |