Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/nvme/target/fcloop.c fcloop_alloc_nport() -> fcloop_nport_put()

Type Parameter Key Value
PARAM_VALUE 0 nport 4096-ptr_max
PARAM_VALUE 0 nport->ref.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 nport->tport 1-u64max
CAPPED_DATA 0 nport->node_name 1
CAPPED_DATA 0 nport->port_name 1
DATA_SOURCE 0 nport r __fcloop_nport_lookup
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &of->mutex
LOCK2 flags
LOCK2 global &fcloop_lock
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/nvme/target/fcloop.c fcloop_create_remote_port() -> fcloop_nport_put()

Type Parameter Key Value
PARAM_VALUE 0 nport 4096-ptr_max
PARAM_VALUE 0 nport->lport 4096-ptr_max
PARAM_VALUE 0 nport->nport_list.next 4096-ptr_max
PARAM_VALUE 0 nport->nport_list.prev 4096-ptr_max
PARAM_VALUE 0 nport->ref.refs.counter (-1073741824),0-s32max
BUF_SIZE 0 nport (-1),72
BUF_SIZE 0 nport (-1),72
DATA_SOURCE 0 nport r fcloop_alloc_nport
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 nport->node_name 0-u64max
USER_DATA 0 nport->port_name 0-u64max
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/nvme/target/fcloop.c fcloop_create_target_port() -> fcloop_nport_put()

Type Parameter Key Value
PARAM_VALUE 0 nport 4096-ptr_max
PARAM_VALUE 0 nport->nport_list.next 4096-ptr_max
PARAM_VALUE 0 nport->nport_list.prev 4096-ptr_max
PARAM_VALUE 0 nport->ref.refs.counter (-1073741824),0-s32max
BUF_SIZE 0 nport (-1),72
BUF_SIZE 0 nport (-1),72
DATA_SOURCE 0 nport r fcloop_alloc_nport
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 nport->node_name 0-u64max
USER_DATA 0 nport->port_name 0-u64max
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/nvme/target/fcloop.c fcloop_delete_remote_port() -> fcloop_nport_put()

Type Parameter Key Value
PARAM_VALUE 0 nport 4096-ptr_max
PARAM_VALUE 0 nport->ref.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 nport->rport 0
CAPPED_DATA 0 nport->node_name 1
CAPPED_DATA 0 nport->port_name 1
DATA_SOURCE 0 nport r fcloop_nport_lookup
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/nvme/target/fcloop.c fcloop_delete_target_port() -> fcloop_nport_put()

Type Parameter Key Value
PARAM_VALUE 0 nport 4096-ptr_max
PARAM_VALUE 0 nport->ref.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 nport->tport 0
CAPPED_DATA 0 nport->node_name 1
CAPPED_DATA 0 nport->port_name 1
DATA_SOURCE 0 nport r fcloop_nport_lookup
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/nvme/target/fcloop.c fcloop_exit() -> fcloop_nport_put()

Type Parameter Key Value
PARAM_VALUE 0 nport 4096-ptr_max
PARAM_VALUE 0 nport->ref.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 nport->rport 0
PARAM_VALUE 0 nport->tport 0
NOCHECK_CALL

drivers/nvme/target/fcloop.c fcloop_remoteport_delete() -> fcloop_nport_put()

Type Parameter Key Value
PARAM_VALUE 0 nport 4096-ptr_max
PARAM_VALUE 0 nport->rport 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/nvme/target/fcloop.c fcloop_targetport_delete() -> fcloop_nport_put()

Type Parameter Key Value
PARAM_VALUE 0 nport 4096-ptr_max
PARAM_VALUE 0 nport->tport 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dir->i_rwsem
HALF_LOCKED2 &m->lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &nvmet_config_sem
HALF_LOCKED2 global &nvmet_fc_tgtlock