summaryrefslogtreecommitdiffstats
path: root/drivers/scsi
diff options
context:
space:
mode:
authoradam radford <aradford@gmail.com>2011-02-24 20:57:09 -0800
committerJames Bottomley <James.Bottomley@suse.de>2011-02-28 12:02:52 -0600
commit42a8d2b34d107df34533ea4840daf8d62bdc90aa (patch)
tree7c46eeb6c9da28e19cd5eec9d9f7e7f3a74ce6c9 /drivers/scsi
parent1ac515ef3f2f7ab32498b0e4907933ff8b9b98c0 (diff)
downloadlinux-42a8d2b34d107df34533ea4840daf8d62bdc90aa.tar.gz
linux-42a8d2b34d107df34533ea4840daf8d62bdc90aa.tar.bz2
linux-42a8d2b34d107df34533ea4840daf8d62bdc90aa.zip
[SCSI] megaraid_sas: Fix max_sectors for IEEE SGL
Signed-off-by: Adam Radford <aradford@gmail.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi')
-rw-r--r--drivers/scsi/megaraid/megaraid_sas.h1
-rw-r--r--drivers/scsi/megaraid/megaraid_sas_base.c4
2 files changed, 5 insertions, 0 deletions
diff --git a/drivers/scsi/megaraid/megaraid_sas.h b/drivers/scsi/megaraid/megaraid_sas.h
index e00ee4afdbc7..c782bbc57cc8 100644
--- a/drivers/scsi/megaraid/megaraid_sas.h
+++ b/drivers/scsi/megaraid/megaraid_sas.h
@@ -723,6 +723,7 @@ struct megasas_ctrl_info {
MEGASAS_MAX_DEV_PER_CHANNEL)
#define MEGASAS_MAX_SECTORS (2*1024)
+#define MEGASAS_MAX_SECTORS_IEEE (2*128)
#define MEGASAS_DBG_LVL 1
#define MEGASAS_FW_BUSY 1
diff --git a/drivers/scsi/megaraid/megaraid_sas_base.c b/drivers/scsi/megaraid/megaraid_sas_base.c
index c9d82b56c6d7..960b88cb4ff6 100644
--- a/drivers/scsi/megaraid/megaraid_sas_base.c
+++ b/drivers/scsi/megaraid/megaraid_sas_base.c
@@ -3824,6 +3824,10 @@ static int megasas_io_attach(struct megasas_instance *instance)
instance->max_fw_cmds - MEGASAS_INT_CMDS;
host->this_id = instance->init_id;
host->sg_tablesize = instance->max_num_sge;
+
+ if (instance->fw_support_ieee)
+ instance->max_sectors_per_req = MEGASAS_MAX_SECTORS_IEEE;
+
/*
* Check if the module parameter value for max_sectors can be used
*/