On Thu, 2 Dec 2010 18:22:33 +0200 (EET) Kai Makisara <Kai.Makisara@xxxxxxxxxxx> wrote: > > -#define MPT_SCSI_SG_DEPTH CONFIG_FUSION_MAX_SGE > > +#define MPT_SCSI_SG_DEPTH 256 > > -- > > > > 128 is good amount for Scatter gather element. This value is standard value for MPT FUSIION, since long. > > > > This value will be reflect to sg_tablesize and linux scatter-gather module will use this value for creating sg_table for HBA. > > See: " cat /sys/class/scsi_host/host<x>/sg_tablesize" > > > > If single IO is not able to fit into sg_tablesize, then it will be converted into multiple IOs for Low Layer Drivers(By "scatter-gather" module of linux). > > So I do not see any problem with > > CONFIG_FUSION_MAX_SGE value. Our driver internally convert sglist into SGE which understood by LSI H/W. > > > You can't convert write of one block into multiple IOs. If someone wants > to write 2 MB blocks, the system must transfer 2 MB in one IO. The choices > are: I'm not sure that Kashyap is talking about multiple IO requests. SGE is LSI H/W's data structure to describe the set of a dma address and a transfer length. LSI H/W can chain SGE so if you pass large scatter-gather to the driver, it leads to single SCSI command with changed multiple SGEs. I suppose mpt2sas can handle more than 256 scatter gatters. -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html