summaryrefslogtreecommitdiffstats
path: root/drivers/target/target_core_transport.c
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@infradead.org>2011-10-18 06:57:00 -0400
committerNicholas Bellinger <nab@linux-iscsi.org>2011-10-24 03:21:56 +0000
commit7c1c6af37af69a4ac4a6485c968496d257245b5d (patch)
tree7837a4ec24de8dc4c373810137250c7e75d9f24b /drivers/target/target_core_transport.c
parentdbc5623eb2898f5b5dcdc0b16077bb3f58629c78 (diff)
downloadop-kernel-dev-7c1c6af37af69a4ac4a6485c968496d257245b5d.zip
op-kernel-dev-7c1c6af37af69a4ac4a6485c968496d257245b5d.tar.gz
target: remove the task_sg_bidi field se_task and pSCSI BIDI support
This field is never used given that BIDI handling happens at the command and not the task level. Remove it and the dead code in pscsi that tries to work on it. It also prevents pSCSI passthrough for the two currently enabled BIDI commands now that task->task_sg_bidi support has been removed. Signed-off-by: Christoph Hellwig <hch@lst.de> Cc: Boaz Harrosh <bharrosh@panasas.com> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Diffstat (limited to 'drivers/target/target_core_transport.c')
-rw-r--r--drivers/target/target_core_transport.c18
1 files changed, 5 insertions, 13 deletions
diff --git a/drivers/target/target_core_transport.c b/drivers/target/target_core_transport.c
index 06305be..624d86e 100644
--- a/drivers/target/target_core_transport.c
+++ b/drivers/target/target_core_transport.c
@@ -2871,13 +2871,10 @@ static int transport_generic_cmd_sequencer(
size = transport_get_size(sectors, cdb, cmd);
cmd->t_task_lba = transport_lba_32(cdb);
cmd->se_cmd_flags |= SCF_SCSI_DATA_SG_IO_CDB;
- passthrough = (dev->transport->transport_type ==
- TRANSPORT_PLUGIN_PHBA_PDEV);
- /*
- * Skip the remaining assignments for TCM/PSCSI passthrough
- */
- if (passthrough)
- break;
+
+ if (dev->transport->transport_type ==
+ TRANSPORT_PLUGIN_PHBA_PDEV)
+ goto out_unsupported_cdb;
/*
* Setup BIDI XOR callback to be run after I/O completion.
*/
@@ -2906,12 +2903,8 @@ static int transport_generic_cmd_sequencer(
cmd->t_task_lba = transport_lba_64_ext(cdb);
cmd->se_cmd_flags |= SCF_SCSI_DATA_SG_IO_CDB;
- /*
- * Skip the remaining assignments for TCM/PSCSI passthrough
- */
if (passthrough)
- break;
-
+ goto out_unsupported_cdb;
/*
* Setup BIDI XOR callback to be run during after I/O
* completion.
@@ -3562,7 +3555,6 @@ static void transport_free_dev_tasks(struct se_cmd *cmd)
*/
del_timer_sync(&task->task_timer);
- kfree(task->task_sg_bidi);
kfree(task->task_sg);
list_del(&task->t_list);
OpenPOWER on IntegriCloud