]> git.baikalelectronics.ru Git - kernel.git/commit
scsi: hisi_sas: Fix the race between IO completion and timeout for SMP/internal IO
authorXiang Chen <chenxiang66@hisilicon.com>
Mon, 24 Sep 2018 15:06:30 +0000 (23:06 +0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 16 Oct 2018 04:27:04 +0000 (00:27 -0400)
commit408bae0159009236889f8c0808987de4435858cf
tree0dec9f098326737e4f4f9c68a09de14eed7b427f
parent3739b3535a8cb241412febaed3609256d8f1ecf3
scsi: hisi_sas: Fix the race between IO completion and timeout for SMP/internal IO

If SMP/internal IO times out, we will possibly free the task immediately.

However if the IO actually completes at the same time, the IO completion
may refer to task which has been freed.

So to solve the issue, flush the tasklet to finish IO completion before
free'ing slot/task.

Signed-off-by: Xiang Chen <chenxiang66@hisilicon.com>
Signed-off-by: John Garry <john.garry@huawei.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/hisi_sas/hisi_sas_main.c