scsi: core: Have SCSI midlayer retry scsi_report_lun_scan() errors
authorMike Christie <michael.christie@oracle.com>
Tue, 23 Jan 2024 00:22:14 +0000 (18:22 -0600)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 30 Jan 2024 02:20:54 +0000 (21:20 -0500)
commit8d24677ebb9e79201801cedefc5127655d5e8c3f
tree8888497c1511310aba42d8705eabdcc3000099f7
parent21bdff48e12bf674208e0575a03ca89d663f1a3c
scsi: core: Have SCSI midlayer retry scsi_report_lun_scan() errors

This has scsi_report_lun_scan() have the SCSI midlayer retry errors instead
of driving them itself.

There is one behavior change where we no longer retry when
scsi_execute_cmd() returns < 0, but we should be ok. We don't need to retry
for failures like the queue being removed, and for the case where there are
no tags/reqs the block layer waits/retries for us. For possible memory
allocation failures from blk_rq_map_kern() we use GFP_NOIO, so retrying
will probably not help.

Signed-off-by: Mike Christie <michael.christie@oracle.com>
Link: https://lore.kernel.org/r/20240123002220.129141-14-michael.christie@oracle.com
Acked-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/scsi_scan.c