[SCSI] megaraid_sas: Set IO request timeout value provided by OS timeout for Tape devices

Signed-off-by: Sumit Saxena <sumit.saxena@lsi.com>
Signed-off-by: Kashyap Desai <kashyap.desai@lsi.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
This commit is contained in:
Sumit.Saxena@lsi.com 2013-05-22 12:31:18 +05:30 committed by James Bottomley
parent 105900d56e
commit 32d8745c88

View File

@ -1527,6 +1527,18 @@ megasas_build_dcdb_fusion(struct megasas_instance *instance,
MEGASAS_REQ_DESCRIPT_FLAGS_TYPE_SHIFT);
cmd->request_desc->SCSIIO.DevHandle =
local_map_ptr->raidMap.devHndlInfo[device_id].curDevHdl;
/*
* If the command is for the tape device, set the
* FP timeout to the os layer timeout value.
*/
if (scmd->device->type == TYPE_TAPE) {
if ((scmd->request->timeout / HZ) > 0xFFFF)
io_request->RaidContext.timeoutValue =
0xFFFF;
else
io_request->RaidContext.timeoutValue =
scmd->request->timeout / HZ;
}
} else {
io_request->Function = MEGASAS_MPI2_FUNCTION_LD_IO_REQUEST;
io_request->DevHandle = device_id;