Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

drivers/scsi/be2iscsi/be_main.c hwi_complete_drvr_msgs() -> __iscsi_put_task()

Type Parameter Key Value
PARAM_VALUE 0 task 1-u64max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &session->back_lock
LOCK2 bh
TYPE_LOCK (struct iscsi_session)->back_lock

drivers/scsi/libiscsi.c cleanup_queued_task() -> __iscsi_put_task()

Type Parameter Key Value
PARAM_VALUE 0 task 4096-ptr_max
PARAM_VALUE 0 task->running.next->prev 4096-ptr_max
PARAM_VALUE 0 task->running.prev->next 4096-ptr_max
PARAM_VALUE 0 task->state 1,3
CAPPED_DATA 0 &task->running 1
DATA_SOURCE 0 task $0
BIT_INFO 0 task->state 0x1,0x3
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 task->hdr->exp_statsn 0-u32max[u]
USER_DATA 0 task->hdr->flags 0-255[u]
USER_DATA 0 task->hdr->hlength 0-62[u]
USER_DATA 0 task->hdr->itt 0-u32max[u]
USER_DATA 0 task->hdr->max_statsn 0-u32max[u]
USER_DATA 0 task->hdr->opcode 1[u]
USER_DATA 0 task->hdr->statsn 0-u32max[u]
USER_DATA 0 task->hdr->ttt 0-u32max[u]
LOCK2 &session->back_lock
LOCK2 bh
HALF_LOCKED2 &session->eh_mutex
HALF_LOCKED2 &session->frwd_lock
TYPE_LOCK (struct iscsi_session)->back_lock
TYPE_LOCK (struct iscsi_session)->frwd_lock

drivers/scsi/libiscsi.c cleanup_queued_task() -> __iscsi_put_task()

Type Parameter Key Value
PARAM_VALUE 0 task 4096-ptr_max
PARAM_VALUE 0 task->conn 4096-ptr_max
PARAM_VALUE 0 task->conn->session 4096-ptr_max
PARAM_VALUE 0 task->running.next 4096-ptr_max
CAPPED_DATA 0 task 1
CAPPED_DATA 0 &task->running 1
DATA_SOURCE 0 task $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 task->hdr->exp_statsn 0-u32max[u]
USER_DATA 0 task->hdr->flags 0-255[u]
USER_DATA 0 task->hdr->hlength 0-62[u]
USER_DATA 0 task->hdr->itt 0-u32max[u]
USER_DATA 0 task->hdr->max_statsn 0-u32max[u]
USER_DATA 0 task->hdr->opcode 1[u]
USER_DATA 0 task->hdr->statsn 0-u32max[u]
USER_DATA 0 task->hdr->ttt 0-u32max[u]
LOCK2 &session->back_lock
LOCK2 bh
HALF_LOCKED2 &session->eh_mutex
HALF_LOCKED2 &session->frwd_lock
TYPE_LOCK (struct iscsi_session)->back_lock
TYPE_LOCK (struct iscsi_session)->frwd_lock

drivers/scsi/libiscsi.c cleanup_queued_task() -> __iscsi_put_task()

Type Parameter Key Value
PARAM_VALUE 0 task 4096-ptr_max
PARAM_VALUE 0 task->conn 4096-ptr_max
PARAM_VALUE 0 task->conn->session 4096-ptr_max
PARAM_VALUE 0 task->conn->task 0
PARAM_VALUE 0 task->running.next 4096-ptr_max
CAPPED_DATA 0 task 1
CAPPED_DATA 0 &task->running 1
DATA_SOURCE 0 task $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 task->hdr->exp_statsn 0-u32max[u]
USER_DATA 0 task->hdr->flags 0-255[u]
USER_DATA 0 task->hdr->hlength 0-62[u]
USER_DATA 0 task->hdr->itt 0-u32max[u]
USER_DATA 0 task->hdr->max_statsn 0-u32max[u]
USER_DATA 0 task->hdr->opcode 1[u]
USER_DATA 0 task->hdr->statsn 0-u32max[u]
USER_DATA 0 task->hdr->ttt 0-u32max[u]
LOCK2 &session->back_lock
LOCK2 bh
HALF_LOCKED2 &session->eh_mutex
HALF_LOCKED2 &session->frwd_lock
TYPE_LOCK (struct iscsi_session)->back_lock
TYPE_LOCK (struct iscsi_session)->frwd_lock

drivers/scsi/libiscsi.c fail_scsi_tasks() -> __iscsi_put_task()

Type Parameter Key Value
PARAM_VALUE 0 task 4096-ptr_max
PARAM_VALUE 0 task->conn 4096-ptr_max
PARAM_VALUE 0 task->conn->session 4096-ptr_max
PARAM_VALUE 0 task->conn->task 0
PARAM_VALUE 0 task->running.next 4096-ptr_max
PARAM_VALUE 0 task->running.next->next 4096-ptr_max
PARAM_VALUE 0 task->running.next->prev 4096-ptr_max
PARAM_VALUE 0 task->running.prev 4096-ptr_max
PARAM_VALUE 0 task->running.prev->next 4096-ptr_max
PARAM_VALUE 0 task->running.prev->prev 4096-ptr_max
CAPPED_DATA 0 task 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &session->back_lock
LOCK2 &session->eh_mutex
LOCK2 &session->frwd_lock
LOCK2 bh
HALF_LOCKED2 &session->frwd_lock
TYPE_LOCK (struct iscsi_session)->back_lock
TYPE_LOCK (struct iscsi_session)->eh_mutex
TYPE_LOCK (struct iscsi_session)->frwd_lock

drivers/scsi/libiscsi.c iscsi_complete_task() -> __iscsi_put_task()

Type Parameter Key Value
PARAM_VALUE 0 task 4096-ptr_max
PARAM_VALUE 0 task->conn 4096-ptr_max
PARAM_VALUE 0 task->conn->session 4096-ptr_max
PARAM_VALUE 0 task->state 1,4-6
CAPPED_DATA 0 task 1
DATA_SOURCE 0 task $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 task->hdr->exp_statsn 0-u32max[u]
USER_DATA 0 task->hdr->flags 0-255[u]
USER_DATA 0 task->hdr->hlength 0-62[u]
USER_DATA 0 task->hdr->itt 0-u32max[u]
USER_DATA 0 task->hdr->max_statsn 0-u32max[u]
USER_DATA 0 task->hdr->opcode 1[u]
USER_DATA 0 task->hdr->statsn 0-u32max[u]
USER_DATA 0 task->hdr->ttt 0-u32max[u]
HALF_LOCKED2 &session->back_lock
HALF_LOCKED2 &session->eh_mutex
HALF_LOCKED2 &session->frwd_lock
HALF_LOCKED2 bh
TYPE_LOCK (struct iscsi_session)->back_lock

drivers/scsi/libiscsi.c iscsi_data_xmit() -> __iscsi_put_task()

Type Parameter Key Value
PARAM_VALUE 0 task 4096-ptr_max
PARAM_VALUE 0 task->hdr 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
USER_DATA 0 task->hdr->exp_statsn 0-u32max[u]
USER_DATA 0 task->hdr->hlength 0-62[u]
USER_DATA 0 task->hdr->opcode 1[u]
LOCK2 &conn->session->back_lock
LOCK2 &conn->session->frwd_lock
LOCK2 bh
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct iscsi_session)->back_lock
TYPE_LOCK (struct iscsi_session)->frwd_lock

drivers/scsi/qedi/qedi_fw.c qedi_process_nopin_local_cmpl() -> __iscsi_put_task()

Type Parameter Key Value
PARAM_VALUE 0 task 4096-ptr_max
PARAM_VALUE 0 task->dd_data 4096-ptr_max
PARAM_VALUE 0 task->hdr 4096-ptr_max
PARAM_VALUE 0 task->hdr->itt u32max
DATA_SOURCE 0 task $2
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &session->back_lock
LOCK2 bh
HALF_LOCKED2 &p->p_work_lock
HALF_LOCKED2 flags
TYPE_LOCK (struct iscsi_session)->back_lock

drivers/scsi/bnx2i/bnx2i_hwi.c bnx2i_process_nopin_local_cmpl() -> __iscsi_put_task()

Type Parameter Key Value
PARAM_VALUE 0 task 1-u64max
DATA_SOURCE 0 task r iscsi_itt_to_task
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &session->back_lock
LOCK2 rcu_read
TYPE_LOCK (struct iscsi_session)->back_lock