diff -rupN old/drivers/scsi/megaraid/megaraid_sas.c new/drivers/scsi/megaraid/megaraid_sas.c --- old/drivers/scsi/megaraid/megaraid_sas.c 2010-11-14 15:49:16.000000000 -0500 +++ new/drivers/scsi/megaraid/megaraid_sas.c 2010-11-14 15:54:32.000000000 -0500 @@ -3686,6 +3686,10 @@ static int megasas_io_attach(struct mega 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 */ diff -rupN old/drivers/scsi/megaraid/megaraid_sas.h new/drivers/scsi/megaraid/megaraid_sas.h --- old/drivers/scsi/megaraid/megaraid_sas.h 2010-11-14 14:31:29.000000000 -0500 +++ new/drivers/scsi/megaraid/megaraid_sas.h 2010-11-14 14:35:28.000000000 -0500 @@ -708,6 +708,7 @@ struct megasas_ctrl_info { #define MEGASAS_MAX_NAME 32 #define MEGASAS_MAX_SECTORS (2*1024) +#define MEGASAS_MAX_SECTORS_IEEE (2*128) #define MEGASAS_DBG_LVL 1 #define MEGASAS_FW_BUSY 1