diff options
Diffstat (limited to 'drivers/scsi/libsas/sas_scsi_host.c')
-rw-r--r-- | drivers/scsi/libsas/sas_scsi_host.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/scsi/libsas/sas_scsi_host.c b/drivers/scsi/libsas/sas_scsi_host.c index 676414859872..6e795a174a12 100644 --- a/drivers/scsi/libsas/sas_scsi_host.c +++ b/drivers/scsi/libsas/sas_scsi_host.c | |||
@@ -1134,9 +1134,13 @@ void sas_task_abort(struct sas_task *task) | |||
1134 | 1134 | ||
1135 | /* Escape for libsas internal commands */ | 1135 | /* Escape for libsas internal commands */ |
1136 | if (!sc) { | 1136 | if (!sc) { |
1137 | if (!del_timer(&task->timer)) | 1137 | struct sas_task_slow *slow = task->slow_task; |
1138 | |||
1139 | if (!slow) | ||
1140 | return; | ||
1141 | if (!del_timer(&slow->timer)) | ||
1138 | return; | 1142 | return; |
1139 | task->timer.function(task->timer.data); | 1143 | slow->timer.function(slow->timer.data); |
1140 | return; | 1144 | return; |
1141 | } | 1145 | } |
1142 | 1146 | ||