[SCSI] libsas: trim sas_task of slow path infrastructure

The timer and the completion are only used for slow path tasks (smp, and
lldd tmfs), yet we incur the allocation space and cpu setup time for
every fast path task.

Cc: Xiangliang Yu <yuxiangl@marvell.com>
Acked-by: Jack Wang <jack_wang@usish.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
This commit is contained in:
Dan Williams
2012-06-21 23:36:30 -07:00
committed by James Bottomley
parent a494fd5bd9
commit f0bf750c2d
6 changed files with 73 additions and 46 deletions

View File

@@ -1134,9 +1134,13 @@ void sas_task_abort(struct sas_task *task)
/* Escape for libsas internal commands */
if (!sc) {
if (!del_timer(&task->timer))
struct sas_task_slow *slow = task->slow_task;
if (!slow)
return;
task->timer.function(task->timer.data);
if (!del_timer(&slow->timer))
return;
slow->timer.function(slow->timer.data);
return;
}