From: sumit.saxena@avagotech.com Date: Mon, 31 Aug 2015 11:54:01 +0000 (+0530) Subject: megaraid_sas: Fix validHandles check in I/O path X-Git-Tag: firefly_0821_release~176^2~600^2^2~118 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=75b96061eb95c9b9f8a1da6995f1c314526f3572;p=firefly-linux-kernel-4.4.55.git megaraid_sas: Fix validHandles check in I/O path Syncro firmware supports round robin I/O switching on dual path. Driver uses validHandles to check for dual path. However, it is supposed to check for values > 1 (not > 2). Signed-off-by: Sumit Saxena Signed-off-by: Kashyap Desai Reviewed-by: Martin K. Petersen Signed-off-by: Martin K. Petersen --- diff --git a/drivers/scsi/megaraid/megaraid_sas_fusion.c b/drivers/scsi/megaraid/megaraid_sas_fusion.c index 8d0a88f092c2..b1314964f1d0 100644 --- a/drivers/scsi/megaraid/megaraid_sas_fusion.c +++ b/drivers/scsi/megaraid/megaraid_sas_fusion.c @@ -1684,7 +1684,7 @@ megasas_build_ldio_fusion(struct megasas_instance *instance, scp->SCp.Status &= ~MEGASAS_LOAD_BALANCE_FLAG; if ((raidLUN[0] == 1) && - (local_map_ptr->raidMap.devHndlInfo[io_info.pd_after_lb].validHandles > 2)) { + (local_map_ptr->raidMap.devHndlInfo[io_info.pd_after_lb].validHandles > 1)) { instance->dev_handle = !(instance->dev_handle); io_info.devHandle = local_map_ptr->raidMap.devHndlInfo[io_info.pd_after_lb].devHandle[instance->dev_handle];