linux/drivers/scsi/hisi_sas
Xiaofei Tan 571295f805 scsi: hisi_sas: complete all tasklets prior to host reset
The CQ event is handled in tasklet context, and it could be delayed if
the system loading is high.

It is possible to run into some problems when executing a host reset
when cq_tasklet_vx_hw() is being executed.

So, prior to host reset, execute tasklet_kill() to ensure that all CQ
tasklets are complete.

Besides, as the function hisi_sas_wait_tasklets_done() is added to do
tasklet_kill(), this patch refactors some code where tasklet_kill() is
used.

Signed-off-by: Xiaofei Tan <tanxiaofei@huawei.com>
Signed-off-by: John Garry <john.garry@huawei.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2017-10-31 12:28:01 -04:00
..
hisi_sas.h scsi: hisi_sas: complete all tasklets prior to host reset 2017-10-31 12:28:01 -04:00
hisi_sas_main.c scsi: hisi_sas: complete all tasklets prior to host reset 2017-10-31 12:28:01 -04:00
hisi_sas_v1_hw.c scsi: hisi_sas: us start_phy in PHY_FUNC_LINK_RESET 2017-10-25 08:21:04 -04:00
hisi_sas_v2_hw.c scsi: hisi_sas: complete all tasklets prior to host reset 2017-10-31 12:28:01 -04:00
hisi_sas_v3_hw.c scsi: hisi_sas: complete all tasklets prior to host reset 2017-10-31 12:28:01 -04:00
Kconfig scsi: hisi_sas: add skeleton v3 hw driver 2017-06-19 21:31:25 -04:00
Makefile scsi: hisi_sas: add skeleton v3 hw driver 2017-06-19 21:31:25 -04:00