diff options
author | Nicholas Bellinger <nab@linux-iscsi.org> | 2011-10-23 21:16:13 -0400 |
---|---|---|
committer | Nicholas Bellinger <nab@linux-iscsi.org> | 2011-10-23 23:22:06 -0400 |
commit | 415a090ade7e674018e3fa4255938e4c312339b3 (patch) | |
tree | 075991035ca3410cdd2a9110d2cde1c1ca485e4d /drivers/target/iscsi | |
parent | af3f00c75949369d937f499f49118e879939724d (diff) |
target: Fix incorrect transport_sent usage
This patch converts target-core to use se_cmd->t_transport_sent instead of
a duplicated se_cmd->transport_sent member in a handful of locations.
It also updates iscsi_target to properly use ->t_transport_sent instead of
it's own iscsi_cmd_t->transport_sent value that was not being assigned.
Reported-by: Christoph Hellwig <hch@lst.de>
Cc: Christoph Hellwig <hch@lst.de>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Diffstat (limited to 'drivers/target/iscsi')
-rw-r--r-- | drivers/target/iscsi/iscsi_target_core.h | 1 | ||||
-rw-r--r-- | drivers/target/iscsi/iscsi_target_tmr.c | 4 |
2 files changed, 2 insertions, 3 deletions
diff --git a/drivers/target/iscsi/iscsi_target_core.h b/drivers/target/iscsi/iscsi_target_core.h index 84818d7a7057..3723d90d5ae5 100644 --- a/drivers/target/iscsi/iscsi_target_core.h +++ b/drivers/target/iscsi/iscsi_target_core.h | |||
@@ -428,7 +428,6 @@ struct iscsi_cmd { | |||
428 | /* Number of times struct iscsi_cmd is present in immediate queue */ | 428 | /* Number of times struct iscsi_cmd is present in immediate queue */ |
429 | atomic_t immed_queue_count; | 429 | atomic_t immed_queue_count; |
430 | atomic_t response_queue_count; | 430 | atomic_t response_queue_count; |
431 | atomic_t transport_sent; | ||
432 | spinlock_t datain_lock; | 431 | spinlock_t datain_lock; |
433 | spinlock_t dataout_timeout_lock; | 432 | spinlock_t dataout_timeout_lock; |
434 | /* spinlock for protecting struct iscsi_cmd->i_state */ | 433 | /* spinlock for protecting struct iscsi_cmd->i_state */ |
diff --git a/drivers/target/iscsi/iscsi_target_tmr.c b/drivers/target/iscsi/iscsi_target_tmr.c index c3617d8ff3ea..490207eacde9 100644 --- a/drivers/target/iscsi/iscsi_target_tmr.c +++ b/drivers/target/iscsi/iscsi_target_tmr.c | |||
@@ -250,7 +250,7 @@ static int iscsit_task_reassign_complete_write( | |||
250 | * so if we have received all DataOUT we can safety ignore Initiator. | 250 | * so if we have received all DataOUT we can safety ignore Initiator. |
251 | */ | 251 | */ |
252 | if (cmd->cmd_flags & ICF_GOT_LAST_DATAOUT) { | 252 | if (cmd->cmd_flags & ICF_GOT_LAST_DATAOUT) { |
253 | if (!atomic_read(&cmd->transport_sent)) { | 253 | if (!atomic_read(&cmd->se_cmd.t_transport_sent)) { |
254 | pr_debug("WRITE ITT: 0x%08x: t_state: %d" | 254 | pr_debug("WRITE ITT: 0x%08x: t_state: %d" |
255 | " never sent to transport\n", | 255 | " never sent to transport\n", |
256 | cmd->init_task_tag, cmd->se_cmd.t_state); | 256 | cmd->init_task_tag, cmd->se_cmd.t_state); |
@@ -314,7 +314,7 @@ static int iscsit_task_reassign_complete_read( | |||
314 | cmd->acked_data_sn = (tmr_req->exp_data_sn - 1); | 314 | cmd->acked_data_sn = (tmr_req->exp_data_sn - 1); |
315 | } | 315 | } |
316 | 316 | ||
317 | if (!atomic_read(&cmd->transport_sent)) { | 317 | if (!atomic_read(&cmd->se_cmd.t_transport_sent)) { |
318 | pr_debug("READ ITT: 0x%08x: t_state: %d never sent to" | 318 | pr_debug("READ ITT: 0x%08x: t_state: %d never sent to" |
319 | " transport\n", cmd->init_task_tag, | 319 | " transport\n", cmd->init_task_tag, |
320 | cmd->se_cmd.t_state); | 320 | cmd->se_cmd.t_state); |