]> git.baikalelectronics.ru Git - kernel.git/commit
scsi: qla2xxx: Fix disk failure to rediscover
authorQuinn Tran <qutran@marvell.com>
Thu, 10 Mar 2022 09:25:53 +0000 (01:25 -0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 15 Mar 2022 04:29:13 +0000 (00:29 -0400)
commit9c765339066f3c8c788e4122ef7507a3bdfb318d
tree488dddc718d0371b167aeb4f9b8f090e38cc504a
parent6b82be928ef1720f881799fdd43ea7551317c466
scsi: qla2xxx: Fix disk failure to rediscover

User experienced some of the LUN failed to get rediscovered after long
cable pull test. The issue is triggered by a race condition between driver
setting session online state vs starting the LUN scan process at the same
time. Current code set the online state after notifying the session is
available. In this case, trigger to start the LUN scan process happened
before driver could set the session in online state.  LUN scan ends up with
failure due to the session online check was failing.

Set the online state before reporting of the availability of the session.

Link: https://lore.kernel.org/r/20220310092604.22950-3-njavali@marvell.com
Fixes: a3287928f46b ("scsi: qla2xxx: Fix Remote port registration")
Cc: stable@vger.kernel.org
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
Signed-off-by: Quinn Tran <qutran@marvell.com>
Signed-off-by: Nilesh Javali <njavali@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/qla2xxx/qla_init.c
drivers/scsi/qla2xxx/qla_nvme.c