summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoradam radford <aradford@gmail.com>2013-02-09 23:29:20 (GMT)
committerJames Bottomley <JBottomley@Parallels.com>2013-02-22 15:31:41 (GMT)
commit9c5ebd09e5092fdeffd079efd2b40afaa69dafb7 (patch)
tree3bf2846b289b223795421cd5d478771725c9228e
parent046c9ec259d271e7988c7fbe80b8bddf3c8efdc4 (diff)
downloadlinux-fsl-qoriq-9c5ebd09e5092fdeffd079efd2b40afaa69dafb7.tar.xz
[SCSI] megaraid_sas: Dont load DevHandle unless FastPath enabled
The following patch for megaraid_sas will fix an issue where the driver should not be loading the DevHandle unless FastPath is enabled. If FastPath was not enabled, this means the hardware raid map validation failed for some reason, or the map was corrupted, which could mean the DevHandle could be invalid. Signed-off-by: Adam Radford <aradford@gmail.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
-rw-r--r--drivers/scsi/megaraid/megaraid_sas_fusion.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/scsi/megaraid/megaraid_sas_fusion.c b/drivers/scsi/megaraid/megaraid_sas_fusion.c
index a6bccf0..a7d5668 100644
--- a/drivers/scsi/megaraid/megaraid_sas_fusion.c
+++ b/drivers/scsi/megaraid/megaraid_sas_fusion.c
@@ -1511,7 +1511,8 @@ megasas_build_dcdb_fusion(struct megasas_instance *instance,
if (scmd->device->channel < MEGASAS_MAX_PD_CHANNELS &&
instance->pd_list[pd_index].driveState == MR_PD_STATE_SYSTEM) {
io_request->Function = 0;
- io_request->DevHandle =
+ if (fusion->fast_path_io)
+ io_request->DevHandle =
local_map_ptr->raidMap.devHndlInfo[device_id].curDevHdl;
io_request->RaidContext.timeoutValue =
local_map_ptr->raidMap.fpPdIoTimeoutSec;