target: remove the t_task_cdbs_left field in struct se_cmd
authorChristoph Hellwig <hch@infradead.org>
Tue, 24 Apr 2012 04:25:07 +0000 (00:25 -0400)
committerNicholas Bellinger <nab@linux-iscsi.org>
Sun, 6 May 2012 22:11:27 +0000 (15:11 -0700)
Now that tasks are gone we are guaranteed to only get a single completion
per command, and thus don't need this counter.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
drivers/target/target_core_tmr.c
drivers/target/target_core_transport.c
include/target/target_core_base.h

index 6e2378a..bd0b4e6 100644 (file)
@@ -313,11 +313,9 @@ static void core_tmr_drain_state_list(
                        cmd->se_tfo->get_cmd_state(cmd), cmd->t_state,
                        cmd->t_task_cdb[0]);
                pr_debug("LUN_RESET: ITT[0x%08x] - pr_res_key: 0x%016Lx"
-                       " t_task_cdbs_left: %d"
                        " -- CMD_T_ACTIVE: %d"
                        " CMD_T_STOP: %d CMD_T_SENT: %d\n",
                        cmd->se_tfo->get_task_tag(cmd), cmd->pr_res_key,
-                       atomic_read(&cmd->t_task_cdbs_left),
                        (cmd->transport_state & CMD_T_ACTIVE) != 0,
                        (cmd->transport_state & CMD_T_STOP) != 0,
                        (cmd->transport_state & CMD_T_SENT) != 0);
index 47669c6..28df7b8 100644 (file)
@@ -700,11 +700,6 @@ void target_complete_cmd(struct se_cmd *cmd, u8 scsi_status)
        if (!success)
                cmd->transport_state |= CMD_T_FAILED;
 
-       if (!atomic_dec_and_test(&cmd->t_task_cdbs_left)) {
-               spin_unlock_irqrestore(&cmd->t_state_lock, flags);
-               return;
-       }
-
        /*
         * Check for case where an explict ABORT_TASK has been received
         * and transport_wait_for_tasks() will be waiting for completion..
@@ -1755,7 +1750,6 @@ bool target_stop_cmd(struct se_cmd *cmd, unsigned long *flags)
                pr_debug("cmd %p stopped successfully\n", cmd);
 
                spin_lock_irqsave(&cmd->t_state_lock, *flags);
-               atomic_dec(&cmd->t_task_cdbs_left);
                cmd->transport_state &= ~CMD_T_REQUEST_STOP;
                cmd->transport_state &= ~CMD_T_BUSY;
                was_active = true;
@@ -1777,10 +1771,8 @@ void transport_generic_request_failure(struct se_cmd *cmd)
        pr_debug("-----[ i_state: %d t_state: %d scsi_sense_reason: %d\n",
                cmd->se_tfo->get_cmd_state(cmd),
                cmd->t_state, cmd->scsi_sense_reason);
-       pr_debug("-----[ t_task_cdbs_left: %d"
-               " t_task_cdbs_ex_left: %d --"
+       pr_debug("-----[ t_task_cdbs_ex_left: %d --"
                " CMD_T_ACTIVE: %d CMD_T_STOP: %d CMD_T_SENT: %d\n",
-               atomic_read(&cmd->t_task_cdbs_left),
                atomic_read(&cmd->t_task_cdbs_ex_left),
                (cmd->transport_state & CMD_T_ACTIVE) != 0,
                (cmd->transport_state & CMD_T_STOP) != 0,
@@ -3511,7 +3503,6 @@ int transport_generic_new_cmd(struct se_cmd *cmd)
        atomic_inc(&cmd->t_fe_count);
        atomic_inc(&cmd->t_se_count);
 
-       atomic_set(&cmd->t_task_cdbs_left, 1);
        atomic_set(&cmd->t_task_cdbs_ex_left, 1);
 
        /*
index 55a80bd..f176b82 100644 (file)
@@ -549,7 +549,6 @@ struct se_cmd {
        unsigned long long      t_task_lba;
        atomic_t                t_fe_count;
        atomic_t                t_se_count;
-       atomic_t                t_task_cdbs_left;
        atomic_t                t_task_cdbs_ex_left;
        unsigned int            transport_state;
 #define CMD_T_ABORTED          (1 << 0)