浏览代码

[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>
adam radford 14 年之前
父节点
当前提交
42a8d2b34d
共有 2 个文件被更改,包括 5 次插入0 次删除
  1. 1 0
      drivers/scsi/megaraid/megaraid_sas.h
  2. 4 0
      drivers/scsi/megaraid/megaraid_sas_base.c

+ 1 - 0
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

+ 4 - 0
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
 	 */