From: <vl...@us...> - 2009-08-04 17:17:22
|
Revision: 1010 http://scst.svn.sourceforge.net/scst/?rev=1010&view=rev Author: vlnb Date: 2009-08-04 17:17:16 +0000 (Tue, 04 Aug 2009) Log Message: ----------- A minor SAM violation fixed. Modified Paths: -------------- trunk/scst/src/scst_targ.c Modified: trunk/scst/src/scst_targ.c =================================================================== --- trunk/scst/src/scst_targ.c 2009-08-04 16:59:09 UTC (rev 1009) +++ trunk/scst/src/scst_targ.c 2009-08-04 17:17:16 UTC (rev 1010) @@ -4358,6 +4358,17 @@ TRACE(TRACE_MGMT, "Clearing task set (lun=%lld, mcmd=%p)", (long long unsigned int)mcmd->lun, mcmd); + /* + * When a logical unit is aborting one or more tasks from a SCSI + * initiator port with the TASK ABORTED status it should complete all + * of those tasks before entering additional tasks from that SCSI + * initiator port into the task set - SAM2 + */ + mcmd->needs_unblocking = 1; + spin_lock_bh(&dev->dev_lock); + __scst_block_dev(dev); + spin_unlock_bh(&dev->dev_lock); + __scst_abort_task_set(mcmd, mcmd->mcmd_tgt_dev); mutex_lock(&scst_mutex); @@ -4975,6 +4986,7 @@ if (mcmd->needs_unblocking) { switch (mcmd->fn) { case SCST_LUN_RESET: + case SCST_CLEAR_TASK_SET: scst_unblock_dev(mcmd->mcmd_tgt_dev->dev); break; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |