Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

drivers/nvme/target/pci-epf.c nvmet_pci_epf_create_ctrl() -> nvmet_ctrl_put()

Type Parameter Key Value
PARAM_VALUE 0 ctrl 4096-ptr_max
PARAM_VALUE 0 ctrl->aen_enabled 2304
PARAM_VALUE 0 ctrl->async_events.next 4096-ptr_max
PARAM_VALUE 0 ctrl->async_events.next->next 4096-ptr_max
PARAM_VALUE 0 ctrl->async_events.prev 4096-ptr_max
PARAM_VALUE 0 ctrl->async_events.prev->next 4096-ptr_max
PARAM_VALUE 0 ctrl->async_events.prev->prev 4096-ptr_max
PARAM_VALUE 0 ctrl->cap 0,16777216-u64max
PARAM_VALUE 0 ctrl->changed_ns_list 16,4096-ptr_max
PARAM_VALUE 0 ctrl->cqs 4096-ptr_max
PARAM_VALUE 0 ctrl->ctrl_key 0,4096-ptr_max
PARAM_VALUE 0 ctrl->ctrl_key->len 32,48,64
PARAM_VALUE 0 ctrl->dh_gid 0
PARAM_VALUE 0 ctrl->dh_tfm 0
PARAM_VALUE 0 ctrl->drvdata 4096-ptr_max
PARAM_VALUE 0 ctrl->err_counter 0
PARAM_VALUE 0 ctrl->host_key 4096-ptr_max
PARAM_VALUE 0 ctrl->host_key->len 32,48,64
PARAM_VALUE 0 ctrl->lock.dep_map->name 0-255
PARAM_VALUE 0 ctrl->lock.first_waiter 0
PARAM_VALUE 0 ctrl->lock.magic 4096-ptr_max
PARAM_VALUE 0 ctrl->lock.osq.tail.counter 0
PARAM_VALUE 0 ctrl->lock.owner.counter 0
PARAM_VALUE 0 ctrl->ops 4166078988315271168
PARAM_VALUE 0 ctrl->p2p_ns_map.xa_head 0,4098-18446744073709547522
PARAM_VALUE 0 ctrl->port 4096-ptr_max
PARAM_VALUE 0 ctrl->pr_log_mgr.counter 0
PARAM_VALUE 0 ctrl->pr_log_mgr.lock.dep_map->name 0-255
PARAM_VALUE 0 ctrl->pr_log_mgr.lock.magic 4096-ptr_max
PARAM_VALUE 0 ctrl->pr_log_mgr.lost_count 0
PARAM_VALUE 0 ctrl->ref.refcount.refs.counter 1
PARAM_VALUE 0 ctrl->sqs 4096-ptr_max
PARAM_VALUE 0 ctrl->subsys 4096-ptr_max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_children.first 4096-ptr_max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb 4096-ptr_max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_bmap_bits 0-4294967295
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_bmap_count 0-4294967295
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_data_blksize 0-4294967295
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_hashsize s32min-s32max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_last_bmap 0-4294967295
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_mode 0-u16max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_partition_size s32min-s32max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_reserved s32min-s32max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_root_block 0-4294967295
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->work_queued s32min-s32max
PARAM_VALUE 0 ctrl->subsys->ref.refcount.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 ctrl->subsys_entry.next 4096-ptr_max
BUF_SIZE 0 ctrl 13696
BUF_SIZE 0 ctrl->drvdata 872
BUF_SIZE 0 ctrl->ops 152
DATA_SOURCE 0 ctrl r nvmet_alloc_ctrl
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 ctrl->ctrl_key->len
NO_OVERFLOW_SIMPLE 0 ctrl->host_key->len
LOCK2 &epf->lock
HALF_LOCKED2 &dir->i_rwsem
HALF_LOCKED2 &epc->list_lock
TYPE_LOCK (struct pci_epf)->lock

drivers/nvme/target/pci-epf.c nvmet_pci_epf_destroy_ctrl() -> nvmet_ctrl_put()

Type Parameter Key Value
PARAM_VALUE 0 ctrl 4096-ptr_max
PARAM_VALUE 0 ctrl->cc 0
PARAM_VALUE 0 ctrl->csts 0
PARAM_VALUE 0 ctrl->drvdata->nvme_epf->epf->epc->lock.dep_map->name 0-255
PARAM_VALUE 0 ctrl->drvdata->nvme_epf->epf->epc->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ctrl->drvdata->nvme_epf->epf->epc->lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 ctrl->drvdata->nvme_epf->epf->epc->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 ctrl->subsys 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &epc->list_lock
HALF_LOCKED2 &epf->lock
TYPE_LOCK (struct pci_epf)->lock

drivers/nvme/target/core.c nvmet_alloc_ctrl() -> nvmet_ctrl_put()

Type Parameter Key Value
PARAM_VALUE 0 ctrl 4096-ptr_max
PARAM_VALUE 0 ctrl->aen_enabled 2304
PARAM_VALUE 0 ctrl->async_events.next 4096-ptr_max
PARAM_VALUE 0 ctrl->async_events.next->next 4096-ptr_max
PARAM_VALUE 0 ctrl->async_events.prev 4096-ptr_max
PARAM_VALUE 0 ctrl->async_events.prev->next 4096-ptr_max
PARAM_VALUE 0 ctrl->async_events.prev->prev 4096-ptr_max
PARAM_VALUE 0 ctrl->cap 0,16777216-u64max
PARAM_VALUE 0 ctrl->changed_ns_list 16,4096-ptr_max
PARAM_VALUE 0 ctrl->cqs 4096-ptr_max
PARAM_VALUE 0 ctrl->ctrl_key 0
PARAM_VALUE 0 ctrl->dh_gid 0-5
PARAM_VALUE 0 ctrl->dh_key 0,16,4096-ptr_max
PARAM_VALUE 0 ctrl->dh_keysize 0-u32max
PARAM_VALUE 0 ctrl->dh_tfm 0-ptr_max
PARAM_VALUE 0 ctrl->err_counter 0
PARAM_VALUE 0 ctrl->host_key 0
PARAM_VALUE 0 ctrl->lock.dep_map->name 0-255
PARAM_VALUE 0 ctrl->lock.first_waiter 0
PARAM_VALUE 0 ctrl->lock.magic 4096-ptr_max
PARAM_VALUE 0 ctrl->lock.osq.tail.counter 0
PARAM_VALUE 0 ctrl->lock.owner.counter 0
PARAM_VALUE 0 ctrl->ops 4096-ptr_max
PARAM_VALUE 0 ctrl->p2p_ns_map.xa_flags 0,3264,33554432-u32max
PARAM_VALUE 0 ctrl->port 4096-ptr_max
PARAM_VALUE 0 ctrl->pr_log_mgr.counter 0
PARAM_VALUE 0 ctrl->pr_log_mgr.lock.dep_map->name 0-255
PARAM_VALUE 0 ctrl->pr_log_mgr.lock.first_waiter 0
PARAM_VALUE 0 ctrl->pr_log_mgr.lock.magic 4096-ptr_max
PARAM_VALUE 0 ctrl->pr_log_mgr.lock.osq.tail.counter 0
PARAM_VALUE 0 ctrl->pr_log_mgr.lock.owner.counter 0
PARAM_VALUE 0 ctrl->pr_log_mgr.lost_count 0
PARAM_VALUE 0 ctrl->ref.refcount.refs.counter 1
PARAM_VALUE 0 ctrl->shash_id 0
PARAM_VALUE 0 ctrl->sqs 4096-ptr_max
PARAM_VALUE 0 ctrl->subsys 4096-ptr_max
PARAM_VALUE 0 ctrl->subsys->allow_any_host 0
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_children->first->pprev 1-u64max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_children.first 4096-ptr_max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_inode->i_rwsem.dep_map->name 0-255
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_inode->i_rwsem.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_inode->i_rwsem.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_inode->i_rwsem.osq.tail.counter 0-s32max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb 4096-ptr_max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_bmap_bits 0-4294967295
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_bmap_count 0-4294967295
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_data_blksize 0-4294967295
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_hashsize s32min-s32max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_last_bmap 0-4294967295
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_mode 0-u16max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_partition_size s32min-s32max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_reserved s32min-s32max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_root_block 0-4294967295
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->work_queued s32min-s32max
PARAM_VALUE 0 ctrl->subsys->passthru_ctrl 0
PARAM_VALUE 0 ctrl->subsys->ref.refcount.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 ctrl->subsys->type 2
PARAM_VALUE 0 ctrl->subsys_entry.next 4096-ptr_max
BUF_SIZE 0 ctrl 13696
BUF_SIZE 0 ctrl->changed_ns_list 4
BUF_SIZE 0 ctrl->cqs 8-524288
BUF_SIZE 0 ctrl->sqs 8-524288
DATA_SOURCE 0 ctrl r _kzalloc_noprof
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 ctrl->ctrl_key->len
NO_OVERFLOW_SIMPLE 0 ctrl->host_key->len
HALF_LOCKED2 &epf->lock

drivers/nvme/target/core.c nvmet_cq_destroy() -> nvmet_ctrl_put()

Type Parameter Key Value
PARAM_VALUE 0 ctrl 4096-ptr_max
PARAM_VALUE 0 ctrl->cqs 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

drivers/nvme/target/core.c nvmet_sq_create() -> nvmet_ctrl_put()

Type Parameter Key Value
PARAM_VALUE 0 ctrl 4096-ptr_max
PARAM_VALUE 0 ctrl->cqs 4096-ptr_max
PARAM_VALUE 0 ctrl->drvdata 4096-ptr_max
PARAM_VALUE 0 ctrl->ref.refcount.refs.counter (-1073741824),0-s32max
DATA_SOURCE 0 ctrl $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

drivers/nvme/target/core.c nvmet_sq_destroy() -> nvmet_ctrl_put()

Type Parameter Key Value
PARAM_VALUE 0 ctrl 4096-ptr_max
PARAM_VALUE 0 ctrl->reset_tbkas 1
PARAM_VALUE 0 ctrl->sqs 0,4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/nvme/target/fabrics-cmd.c nvmet_execute_admin_connect() -> nvmet_ctrl_put()

Type Parameter Key Value
PARAM_VALUE 0 ctrl 4096-ptr_max
PARAM_VALUE 0 ctrl->aen_enabled 2304
PARAM_VALUE 0 ctrl->async_events.next 4096-ptr_max
PARAM_VALUE 0 ctrl->async_events.next->next 4096-ptr_max
PARAM_VALUE 0 ctrl->async_events.prev 4096-ptr_max
PARAM_VALUE 0 ctrl->async_events.prev->next 4096-ptr_max
PARAM_VALUE 0 ctrl->async_events.prev->prev 4096-ptr_max
PARAM_VALUE 0 ctrl->cap 0,16777216-u64max
PARAM_VALUE 0 ctrl->changed_ns_list 16,4096-ptr_max
PARAM_VALUE 0 ctrl->cqs 4096-ptr_max
PARAM_VALUE 0 ctrl->ctrl_key 0,4096-ptr_max
PARAM_VALUE 0 ctrl->ctrl_key->len 32,48,64
PARAM_VALUE 0 ctrl->dh_gid 0
PARAM_VALUE 0 ctrl->dh_tfm 0
PARAM_VALUE 0 ctrl->err_counter 0
PARAM_VALUE 0 ctrl->host_key 4096-ptr_max
PARAM_VALUE 0 ctrl->host_key->len 32,48,64
PARAM_VALUE 0 ctrl->lock.dep_map->name 0-255
PARAM_VALUE 0 ctrl->lock.first_waiter 0
PARAM_VALUE 0 ctrl->lock.magic 4096-ptr_max
PARAM_VALUE 0 ctrl->lock.osq.tail.counter 0
PARAM_VALUE 0 ctrl->lock.owner.counter 0
PARAM_VALUE 0 ctrl->ops 4096-ptr_max
PARAM_VALUE 0 ctrl->p2p_ns_map.xa_head 0,4098-18446744073709547522
PARAM_VALUE 0 ctrl->port 4096-ptr_max
PARAM_VALUE 0 ctrl->pr_log_mgr.counter 0
PARAM_VALUE 0 ctrl->pr_log_mgr.lock.dep_map->name 0-255
PARAM_VALUE 0 ctrl->pr_log_mgr.lock.first_waiter 0
PARAM_VALUE 0 ctrl->pr_log_mgr.lock.magic 4096-ptr_max
PARAM_VALUE 0 ctrl->pr_log_mgr.lock.osq.tail.counter 0
PARAM_VALUE 0 ctrl->pr_log_mgr.lock.owner.counter 0
PARAM_VALUE 0 ctrl->pr_log_mgr.lost_count 0
PARAM_VALUE 0 ctrl->sqs 4096-ptr_max
PARAM_VALUE 0 ctrl->subsys 4096-ptr_max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_children.first 4096-ptr_max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb 4096-ptr_max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_bmap_bits 0-4294967295
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_bmap_count 0-4294967295
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_data_blksize 0-4294967295
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_hashsize s32min-s32max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_last_bmap 0-4294967295
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_mode 0-u16max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_partition_size s32min-s32max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_reserved s32min-s32max
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->s_root_block 0-4294967295
PARAM_VALUE 0 ctrl->subsys->debugfs_dir->d_sb->s_fs_info->work_queued s32min-s32max
PARAM_VALUE 0 ctrl->subsys->passthru_ctrl 0
PARAM_VALUE 0 ctrl->subsys->ref.refcount.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 ctrl->subsys_entry.next 4096-ptr_max
BUF_SIZE 0 ctrl 13696
DATA_SOURCE 0 ctrl r nvmet_alloc_ctrl
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 ctrl->ctrl_key->len
NO_OVERFLOW_SIMPLE 0 ctrl->host_key->len
HALF_LOCKED2 &pool->lock

drivers/nvme/target/fabrics-cmd.c nvmet_execute_io_connect() -> nvmet_ctrl_put()

Type Parameter Key Value
PARAM_VALUE 0 ctrl 4096-ptr_max
PARAM_VALUE 0 ctrl->subsys 4096-ptr_max
CAPPED_DATA 0 ctrl->cntlid 1
DATA_SOURCE 0 ctrl r nvmet_ctrl_find_get
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &pool->lock