linux/drivers/scsi/hisi_sas
Xiaofei Tan 6175abdeae scsi: hisi_sas: Init disks after controller reset
After the controller is reset, it is possible that the disks attached still
have outstanding IO to complete.

Thus, when the PHYs come back up after controller reset, it is possible
that these IOs complete at some unknown point later.

We want to ensure that all IOs are complete after the controller reset so
that all associated IPTT and other resources can be recycled safely.

To achieve this, re-init the disks by TMF or softreset (in case of ATA
devices).

If the init fails - maybe because the device was removed or link has not
come up - then do not release the device resources, but rather rely on SCSI
EH to handle the timeout for these resources later on.

This patch also does some cleanup to hisi_sas_init_disk(), including
removing superfluous cases in the switch statement.

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>
2018-05-28 22:40:32 -04:00
..
hisi_sas_main.c scsi: hisi_sas: Init disks after controller reset 2018-05-28 22:40:32 -04:00
hisi_sas_v1_hw.c scsi: hisi_sas: Create a scsi_host_template per HW module 2018-05-28 22:40:32 -04:00
hisi_sas_v2_hw.c scsi: hisi_sas: Create a scsi_host_template per HW module 2018-05-28 22:40:32 -04:00
hisi_sas_v3_hw.c scsi: hisi_sas: Create a scsi_host_template per HW module 2018-05-28 22:40:32 -04:00
hisi_sas.h scsi: hisi_sas: Create a scsi_host_template per HW module 2018-05-28 22:40:32 -04:00
Kconfig scsi: hisi_sas: Remove depends on HAS_DMA in case of platform dependency 2018-03-21 18:34:21 -04:00
Makefile scsi: hisi_sas: add skeleton v3 hw driver 2017-06-19 21:31:25 -04:00