Browse Source

isci: Directly control IREQ_ABORT_PATH_ACTIVE when completing TMFs.

TMF requests, unlike normal I/O requests, need to handle I/O management
conditions in the completion function because TMFs are not handled in the
completion tasklet.

Signed-off-by: Jeff Skirvin <jeffrey.d.skirvin@intel.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Jeff Skirvin 13 years ago
parent
commit
1db79b3e78
1 changed files with 3 additions and 0 deletions
  1. 3 0
      drivers/scsi/isci/task.c

+ 3 - 0
drivers/scsi/isci/task.c

@@ -719,6 +719,9 @@ isci_task_request_complete(struct isci_host *ihost,
 	 */
 	set_bit(IREQ_TERMINATED, &ireq->flags);
 
+	if (test_and_clear_bit(IREQ_ABORT_PATH_ACTIVE, &ireq->flags))
+		wake_up_all(&ihost->eventq);
+
 	if (!test_bit(IREQ_NO_AUTO_FREE_TAG, &ireq->flags))
 		isci_free_tag(ihost, ireq->io_tag);