aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/target/iscsi/iscsi_target_util.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/target/iscsi/iscsi_target_util.c')
-rw-r--r--drivers/target/iscsi/iscsi_target_util.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/drivers/target/iscsi/iscsi_target_util.c b/drivers/target/iscsi/iscsi_target_util.c
index c4be6223b9cc..02348f727bd4 100644
--- a/drivers/target/iscsi/iscsi_target_util.c
+++ b/drivers/target/iscsi/iscsi_target_util.c
@@ -840,6 +840,23 @@ void iscsit_release_cmd(struct iscsi_cmd *cmd)
840 kmem_cache_free(lio_cmd_cache, cmd); 840 kmem_cache_free(lio_cmd_cache, cmd);
841} 841}
842 842
843void iscsit_free_cmd(struct iscsi_cmd *cmd)
844{
845 /*
846 * Determine if a struct se_cmd is assoicated with
847 * this struct iscsi_cmd.
848 */
849 switch (cmd->iscsi_opcode) {
850 case ISCSI_OP_SCSI_CMD:
851 case ISCSI_OP_SCSI_TMFUNC:
852 transport_generic_free_cmd(&cmd->se_cmd, 1);
853 break;
854 default:
855 iscsit_release_cmd(cmd);
856 break;
857 }
858}
859
843int iscsit_check_session_usage_count(struct iscsi_session *sess) 860int iscsit_check_session_usage_count(struct iscsi_session *sess)
844{ 861{
845 spin_lock_bh(&sess->session_usage_lock); 862 spin_lock_bh(&sess->session_usage_lock);