summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBart Van Assche2015-05-13 09:17:54 +0200
committerNicholas Bellinger2015-05-15 06:13:31 +0200
commit63509c60bbc62120fb0e3b287c86ac036b893d90 (patch)
treed4c6177bd2cc03fbb94b8fb4c981795f68d7f2dd
parenttarget/user: Disallow full passthrough (pass_level=0) (diff)
downloadkernel-qcow2-linux-63509c60bbc62120fb0e3b287c86ac036b893d90.tar.gz
kernel-qcow2-linux-63509c60bbc62120fb0e3b287c86ac036b893d90.tar.xz
kernel-qcow2-linux-63509c60bbc62120fb0e3b287c86ac036b893d90.zip
target: Fix bidi command handling
The function transport_complete_qf() must call either queue_data_in() or queue_status() but not both. Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
-rw-r--r--drivers/target/target_core_transport.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/target/target_core_transport.c b/drivers/target/target_core_transport.c
index 3fe5cb240b6f..99a38cf320ff 100644
--- a/drivers/target/target_core_transport.c
+++ b/drivers/target/target_core_transport.c
@@ -1957,8 +1957,7 @@ static void transport_complete_qf(struct se_cmd *cmd)
case DMA_TO_DEVICE:
if (cmd->se_cmd_flags & SCF_BIDI) {
ret = cmd->se_tfo->queue_data_in(cmd);
- if (ret < 0)
- break;
+ break;
}
/* Fall through for DMA_TO_DEVICE */
case DMA_NONE: