diff options
-rw-r--r-- | drivers/target/target_core_tmr.c | 6 | ||||
-rw-r--r-- | drivers/target/target_core_transport.c | 22 | ||||
-rw-r--r-- | include/target/target_core_base.h | 3 |
3 files changed, 11 insertions, 20 deletions
diff --git a/drivers/target/target_core_tmr.c b/drivers/target/target_core_tmr.c index 4e963da74a0d..532ce317406a 100644 --- a/drivers/target/target_core_tmr.c +++ b/drivers/target/target_core_tmr.c | |||
@@ -237,12 +237,12 @@ static void core_tmr_drain_task_list( | |||
237 | cmd = task->task_se_cmd; | 237 | cmd = task->task_se_cmd; |
238 | 238 | ||
239 | pr_debug("LUN_RESET: %s cmd: %p task: %p" | 239 | pr_debug("LUN_RESET: %s cmd: %p task: %p" |
240 | " ITT/CmdSN: 0x%08x/0x%08x, i_state: %d, t_state/" | 240 | " ITT/CmdSN: 0x%08x/0x%08x, i_state: %d, t_state: %d" |
241 | "def_t_state: %d/%d cdb: 0x%02x\n", | 241 | "cdb: 0x%02x\n", |
242 | (preempt_and_abort_list) ? "Preempt" : "", cmd, task, | 242 | (preempt_and_abort_list) ? "Preempt" : "", cmd, task, |
243 | cmd->se_tfo->get_task_tag(cmd), 0, | 243 | cmd->se_tfo->get_task_tag(cmd), 0, |
244 | cmd->se_tfo->get_cmd_state(cmd), cmd->t_state, | 244 | cmd->se_tfo->get_cmd_state(cmd), cmd->t_state, |
245 | cmd->deferred_t_state, cmd->t_task_cdb[0]); | 245 | cmd->t_task_cdb[0]); |
246 | pr_debug("LUN_RESET: ITT[0x%08x] - pr_res_key: 0x%016Lx" | 246 | pr_debug("LUN_RESET: ITT[0x%08x] - pr_res_key: 0x%016Lx" |
247 | " t_task_cdbs: %d t_task_cdbs_left: %d" | 247 | " t_task_cdbs: %d t_task_cdbs_left: %d" |
248 | " t_task_cdbs_sent: %d -- t_transport_active: %d" | 248 | " t_task_cdbs_sent: %d -- t_transport_active: %d" |
diff --git a/drivers/target/target_core_transport.c b/drivers/target/target_core_transport.c index 0d055f08044e..87beae6c76a0 100644 --- a/drivers/target/target_core_transport.c +++ b/drivers/target/target_core_transport.c | |||
@@ -478,8 +478,6 @@ static int transport_cmd_check_stop( | |||
478 | " == TRUE for ITT: 0x%08x\n", __func__, __LINE__, | 478 | " == TRUE for ITT: 0x%08x\n", __func__, __LINE__, |
479 | cmd->se_tfo->get_task_tag(cmd)); | 479 | cmd->se_tfo->get_task_tag(cmd)); |
480 | 480 | ||
481 | cmd->deferred_t_state = cmd->t_state; | ||
482 | cmd->t_state = TRANSPORT_DEFERRED_CMD; | ||
483 | atomic_set(&cmd->t_transport_active, 0); | 481 | atomic_set(&cmd->t_transport_active, 0); |
484 | if (transport_off == 2) | 482 | if (transport_off == 2) |
485 | transport_all_task_dev_remove_state(cmd); | 483 | transport_all_task_dev_remove_state(cmd); |
@@ -497,8 +495,6 @@ static int transport_cmd_check_stop( | |||
497 | " TRUE for ITT: 0x%08x\n", __func__, __LINE__, | 495 | " TRUE for ITT: 0x%08x\n", __func__, __LINE__, |
498 | cmd->se_tfo->get_task_tag(cmd)); | 496 | cmd->se_tfo->get_task_tag(cmd)); |
499 | 497 | ||
500 | cmd->deferred_t_state = cmd->t_state; | ||
501 | cmd->t_state = TRANSPORT_DEFERRED_CMD; | ||
502 | if (transport_off == 2) | 498 | if (transport_off == 2) |
503 | transport_all_task_dev_remove_state(cmd); | 499 | transport_all_task_dev_remove_state(cmd); |
504 | 500 | ||
@@ -1845,10 +1841,9 @@ static void transport_generic_request_failure( | |||
1845 | pr_debug("-----[ Storage Engine Exception for cmd: %p ITT: 0x%08x" | 1841 | pr_debug("-----[ Storage Engine Exception for cmd: %p ITT: 0x%08x" |
1846 | " CDB: 0x%02x\n", cmd, cmd->se_tfo->get_task_tag(cmd), | 1842 | " CDB: 0x%02x\n", cmd, cmd->se_tfo->get_task_tag(cmd), |
1847 | cmd->t_task_cdb[0]); | 1843 | cmd->t_task_cdb[0]); |
1848 | pr_debug("-----[ i_state: %d t_state/def_t_state:" | 1844 | pr_debug("-----[ i_state: %d t_state: %d transport_error_status: %d\n", |
1849 | " %d/%d transport_error_status: %d\n", | ||
1850 | cmd->se_tfo->get_cmd_state(cmd), | 1845 | cmd->se_tfo->get_cmd_state(cmd), |
1851 | cmd->t_state, cmd->deferred_t_state, | 1846 | cmd->t_state, |
1852 | cmd->transport_error_status); | 1847 | cmd->transport_error_status); |
1853 | pr_debug("-----[ t_tasks: %d t_task_cdbs_left: %d" | 1848 | pr_debug("-----[ t_tasks: %d t_task_cdbs_left: %d" |
1854 | " t_task_cdbs_sent: %d t_task_cdbs_ex_left: %d --" | 1849 | " t_task_cdbs_sent: %d t_task_cdbs_ex_left: %d --" |
@@ -4404,10 +4399,9 @@ void transport_wait_for_tasks(struct se_cmd *cmd) | |||
4404 | atomic_set(&cmd->t_transport_stop, 1); | 4399 | atomic_set(&cmd->t_transport_stop, 1); |
4405 | 4400 | ||
4406 | pr_debug("wait_for_tasks: Stopping %p ITT: 0x%08x" | 4401 | pr_debug("wait_for_tasks: Stopping %p ITT: 0x%08x" |
4407 | " i_state: %d, t_state/def_t_state: %d/%d, t_transport_stop" | 4402 | " i_state: %d, t_state: %d, t_transport_stop = TRUE\n", |
4408 | " = TRUE\n", cmd, cmd->se_tfo->get_task_tag(cmd), | 4403 | cmd, cmd->se_tfo->get_task_tag(cmd), |
4409 | cmd->se_tfo->get_cmd_state(cmd), cmd->t_state, | 4404 | cmd->se_tfo->get_cmd_state(cmd), cmd->t_state); |
4410 | cmd->deferred_t_state); | ||
4411 | 4405 | ||
4412 | spin_unlock_irqrestore(&cmd->t_state_lock, flags); | 4406 | spin_unlock_irqrestore(&cmd->t_state_lock, flags); |
4413 | 4407 | ||
@@ -4806,9 +4800,9 @@ get_cmd: | |||
4806 | transport_complete_qf(cmd); | 4800 | transport_complete_qf(cmd); |
4807 | break; | 4801 | break; |
4808 | default: | 4802 | default: |
4809 | pr_err("Unknown t_state: %d deferred_t_state:" | 4803 | pr_err("Unknown t_state: %d for ITT: 0x%08x " |
4810 | " %d for ITT: 0x%08x i_state: %d on SE LUN:" | 4804 | "i_state: %d on SE LUN: %u\n", |
4811 | " %u\n", cmd->t_state, cmd->deferred_t_state, | 4805 | cmd->t_state, |
4812 | cmd->se_tfo->get_task_tag(cmd), | 4806 | cmd->se_tfo->get_task_tag(cmd), |
4813 | cmd->se_tfo->get_cmd_state(cmd), | 4807 | cmd->se_tfo->get_cmd_state(cmd), |
4814 | cmd->se_lun->unpacked_lun); | 4808 | cmd->se_lun->unpacked_lun); |
diff --git a/include/target/target_core_base.h b/include/target/target_core_base.h index ced065c1428d..6e2dc3ebff37 100644 --- a/include/target/target_core_base.h +++ b/include/target/target_core_base.h | |||
@@ -83,7 +83,6 @@ enum se_task_flags { | |||
83 | enum transport_state_table { | 83 | enum transport_state_table { |
84 | TRANSPORT_NO_STATE = 0, | 84 | TRANSPORT_NO_STATE = 0, |
85 | TRANSPORT_NEW_CMD = 1, | 85 | TRANSPORT_NEW_CMD = 1, |
86 | TRANSPORT_DEFERRED_CMD = 2, | ||
87 | TRANSPORT_WRITE_PENDING = 3, | 86 | TRANSPORT_WRITE_PENDING = 3, |
88 | TRANSPORT_PROCESS_WRITE = 4, | 87 | TRANSPORT_PROCESS_WRITE = 4, |
89 | TRANSPORT_PROCESSING = 5, | 88 | TRANSPORT_PROCESSING = 5, |
@@ -434,8 +433,6 @@ struct se_cmd { | |||
434 | int sam_task_attr; | 433 | int sam_task_attr; |
435 | /* Transport protocol dependent state, see transport_state_table */ | 434 | /* Transport protocol dependent state, see transport_state_table */ |
436 | enum transport_state_table t_state; | 435 | enum transport_state_table t_state; |
437 | /* Transport protocol dependent state for out of order CmdSNs */ | ||
438 | int deferred_t_state; | ||
439 | /* Transport specific error status */ | 436 | /* Transport specific error status */ |
440 | int transport_error_status; | 437 | int transport_error_status; |
441 | /* See se_cmd_flags_table */ | 438 | /* See se_cmd_flags_table */ |