scsi: aacraid: setting different timeout for src and thor

Set 180 second timeout for thor and 60 seconds for src controllers.

Link: https://lore.kernel.org/r/1571120524-6037-5-git-send-email-balsundar.p@microsemi.com
Signed-off-by: Balsundar P <balsundar.p@microsemi.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
Balsundar P
2019-10-15 11:52:01 +05:30
committed by Martin K. Petersen
parent c02a3342ba
commit e2fd90dd2e
3 changed files with 11 additions and 4 deletions

View File

@@ -391,6 +391,7 @@ static int aac_slave_configure(struct scsi_device *sdev)
int chn, tid;
unsigned int depth = 0;
unsigned int set_timeout = 0;
int timeout = 0;
bool set_qd_dev_type = false;
u8 devtype = 0;
@@ -483,10 +484,13 @@ common_config:
/*
* Firmware has an individual device recovery time typically
* of 35 seconds, give us a margin.
* of 35 seconds, give us a margin. Thor devices can take longer in
* error recovery, hence different value.
*/
if (set_timeout && sdev->request_queue->rq_timeout < (45 * HZ))
blk_queue_rq_timeout(sdev->request_queue, 45*HZ);
if (set_timeout) {
timeout = aac->sa_firmware ? AAC_SA_TIMEOUT : AAC_ARC_TIMEOUT;
blk_queue_rq_timeout(sdev->request_queue, timeout * HZ);
}
if (depth > 256)
depth = 256;