Messages in this thread Patch in this message | | | From | Xingui Yang <> | Subject | [PATCH v3 2/3] scsi: libsas: Directly kick-off EH when device removed with active IO | Date | Wed, 21 Dec 2022 09:25:13 +0000 |
| |
If the device is gone, call sas_device_task_abort() directly and abort active IO to kick-off EH Immediately. This avoids having to wait for block layer timeouts.
Signed-off-by: Xingui Yang <yangxingui@huawei.com> --- drivers/scsi/libsas/sas_discover.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/drivers/scsi/libsas/sas_discover.c b/drivers/scsi/libsas/sas_discover.c index d5bc1314c341..ea5609f9967b 100644 --- a/drivers/scsi/libsas/sas_discover.c +++ b/drivers/scsi/libsas/sas_discover.c @@ -362,6 +362,9 @@ static void sas_destruct_ports(struct asd_sas_port *port) void sas_unregister_dev(struct asd_sas_port *port, struct domain_device *dev) { + if (test_bit(SAS_DEV_GONE, &dev->state)) + sas_device_task_abort(dev); + if (!test_bit(SAS_DEV_DESTROY, &dev->state) && !list_empty(&dev->disco_list_node)) { /* this rphy never saw sas_rphy_add */ -- 2.17.1
| |