[SCSI] libsas: add sas_abort_task
This patch adds an external function, sas_abort_task, to enable LLDDs
to abort sas_tasks. It also adds a work_struct so that the actual
work of aborting a task can be shifted from tasklet context (in the
LLDD) onto the scsi_host's workqueue.
Signed-off-by: Darrick J. Wong <djwong@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
diff --git a/include/scsi/libsas.h b/include/scsi/libsas.h
index 7bf2e8b..a1fc20a 100644
--- a/include/scsi/libsas.h
+++ b/include/scsi/libsas.h
@@ -528,6 +528,8 @@
void *lldd_task; /* for use by LLDDs */
void *uldd_task;
+
+ struct work_struct abort_work;
};
@@ -627,4 +629,6 @@
void sas_init_dev(struct domain_device *);
+void sas_task_abort(struct sas_task *task);
+
#endif /* _SASLIB_H_ */