target: remove TRANSPORT_DEFERRED_CMD state
Christoph Hellwig [Mon, 17 Oct 2011 17:56:51 +0000 (13:56 -0400)]
We never check for this state, and it makes testing for a completed
state much harder given that it overrides the existing state.

Also remove the unused deferred_t_state which is related to it.

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 4e963da..532ce31 100644 (file)
@@ -237,12 +237,12 @@ static void core_tmr_drain_task_list(
                cmd = task->task_se_cmd;
 
                pr_debug("LUN_RESET: %s cmd: %p task: %p"
-                       " ITT/CmdSN: 0x%08x/0x%08x, i_state: %d, t_state/"
-                       "def_t_state: %d/%d cdb: 0x%02x\n",
+                       " ITT/CmdSN: 0x%08x/0x%08x, i_state: %d, t_state: %d"
+                       "cdb: 0x%02x\n",
                        (preempt_and_abort_list) ? "Preempt" : "", cmd, task,
                        cmd->se_tfo->get_task_tag(cmd), 0,
                        cmd->se_tfo->get_cmd_state(cmd), cmd->t_state,
-                       cmd->deferred_t_state, cmd->t_task_cdb[0]);
+                       cmd->t_task_cdb[0]);
                pr_debug("LUN_RESET: ITT[0x%08x] - pr_res_key: 0x%016Lx"
                        " t_task_cdbs: %d t_task_cdbs_left: %d"
                        " t_task_cdbs_sent: %d -- t_transport_active: %d"
index 0d055f0..87beae6 100644 (file)
@@ -478,8 +478,6 @@ static int transport_cmd_check_stop(
                        " == TRUE for ITT: 0x%08x\n", __func__, __LINE__,
                        cmd->se_tfo->get_task_tag(cmd));
 
-               cmd->deferred_t_state = cmd->t_state;
-               cmd->t_state = TRANSPORT_DEFERRED_CMD;
                atomic_set(&cmd->t_transport_active, 0);
                if (transport_off == 2)
                        transport_all_task_dev_remove_state(cmd);
@@ -497,8 +495,6 @@ static int transport_cmd_check_stop(
                        " TRUE for ITT: 0x%08x\n", __func__, __LINE__,
                        cmd->se_tfo->get_task_tag(cmd));
 
-               cmd->deferred_t_state = cmd->t_state;
-               cmd->t_state = TRANSPORT_DEFERRED_CMD;
                if (transport_off == 2)
                        transport_all_task_dev_remove_state(cmd);
 
@@ -1845,10 +1841,9 @@ static void transport_generic_request_failure(
        pr_debug("-----[ Storage Engine Exception for cmd: %p ITT: 0x%08x"
                " CDB: 0x%02x\n", cmd, cmd->se_tfo->get_task_tag(cmd),
                cmd->t_task_cdb[0]);
-       pr_debug("-----[ i_state: %d t_state/def_t_state:"
-               " %d/%d transport_error_status: %d\n",
+       pr_debug("-----[ i_state: %d t_state: %d transport_error_status: %d\n",
                cmd->se_tfo->get_cmd_state(cmd),
-               cmd->t_state, cmd->deferred_t_state,
+               cmd->t_state,
                cmd->transport_error_status);
        pr_debug("-----[ t_tasks: %d t_task_cdbs_left: %d"
                " t_task_cdbs_sent: %d t_task_cdbs_ex_left: %d --"
@@ -4404,10 +4399,9 @@ void transport_wait_for_tasks(struct se_cmd *cmd)
        atomic_set(&cmd->t_transport_stop, 1);
 
        pr_debug("wait_for_tasks: Stopping %p ITT: 0x%08x"
-               " i_state: %d, t_state/def_t_state: %d/%d, t_transport_stop"
-               " = TRUE\n", cmd, cmd->se_tfo->get_task_tag(cmd),
-               cmd->se_tfo->get_cmd_state(cmd), cmd->t_state,
-               cmd->deferred_t_state);
+               " i_state: %d, t_state: %d, t_transport_stop = TRUE\n",
+               cmd, cmd->se_tfo->get_task_tag(cmd),
+               cmd->se_tfo->get_cmd_state(cmd), cmd->t_state);
 
        spin_unlock_irqrestore(&cmd->t_state_lock, flags);
 
@@ -4806,9 +4800,9 @@ get_cmd:
                        transport_complete_qf(cmd);
                        break;
                default:
-                       pr_err("Unknown t_state: %d deferred_t_state:"
-                               " %d for ITT: 0x%08x i_state: %d on SE LUN:"
-                               " %u\n", cmd->t_state, cmd->deferred_t_state,
+                       pr_err("Unknown t_state: %d  for ITT: 0x%08x "
+                               "i_state: %d on SE LUN: %u\n",
+                               cmd->t_state,
                                cmd->se_tfo->get_task_tag(cmd),
                                cmd->se_tfo->get_cmd_state(cmd),
                                cmd->se_lun->unpacked_lun);
index ced065c..6e2dc3e 100644 (file)
@@ -83,7 +83,6 @@ enum se_task_flags {
 enum transport_state_table {
        TRANSPORT_NO_STATE      = 0,
        TRANSPORT_NEW_CMD       = 1,
-       TRANSPORT_DEFERRED_CMD  = 2,
        TRANSPORT_WRITE_PENDING = 3,
        TRANSPORT_PROCESS_WRITE = 4,
        TRANSPORT_PROCESSING    = 5,
@@ -434,8 +433,6 @@ struct se_cmd {
        int                     sam_task_attr;
        /* Transport protocol dependent state, see transport_state_table */
        enum transport_state_table t_state;
-       /* Transport protocol dependent state for out of order CmdSNs */
-       int                     deferred_t_state;
        /* Transport specific error status */
        int                     transport_error_status;
        /* See se_cmd_flags_table */