On Thu, 17 Jan 2008, Boaz Harrosh wrote: > below list of drivers have used SG_ALL as a size to > preallocate maximum possible command's sg-count. > This is no longer possible since the maximum is not > set at compile time but as a run time configuration. > > A better schema can be advised with a more dynamic allocation. > Perhaps from a kmem_cache. > > Affected drivers/files: > drivers/scsi/atari_scsi.[ch] > drivers/scsi/eata_pio.c > drivers/scsi/ibmvscsi/ibmvscsi.[ch] > drivers/scsi/mac53c94.c > drivers/scsi/mesh.c > drivers/scsi/nsp32.h > drivers/scsi/qla1280.c > drivers/scsi/qla2xxx/qla_os.c > drivers/scsi/qla4xxx/ql4_def.h ... There's no functional change in your patches to qla2xxx and qla4xxx. Perhaps a cut-n-paste typo from qla1280.c (which should be capped): > diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c > index 78d1103..e368f38 100644 > --- a/drivers/scsi/qla2xxx/qla_os.c > +++ b/drivers/scsi/qla2xxx/qla_os.c > @@ -111,6 +111,8 @@ static int qla2x00_device_reset(scsi_qla_host_t *, fc_port_t *); > static int qla2x00_change_queue_depth(struct scsi_device *, int); > static int qla2x00_change_queue_type(struct scsi_device *, int); > > +#define QLA2XXX_MAX_SG 255 > + > struct scsi_host_template qla2x00_driver_template = { > .module = THIS_MODULE, > .name = QLA2XXX_DRIVER_NAME, > diff --git a/drivers/scsi/qla4xxx/ql4_def.h b/drivers/scsi/qla4xxx/ql4_def.h > index accaf69..64cd43b 100644 > --- a/drivers/scsi/qla4xxx/ql4_def.h > +++ b/drivers/scsi/qla4xxx/ql4_def.h > @@ -101,6 +101,7 @@ > #define MBOX_AEN_REG_COUNT 5 > #define MAX_INIT_RETRIES 5 > #define IOCB_HIWAT_CUSHION 16 > +#define QLA_MAX_SG 255 I don't forsee any issues with maintaining SG_ALL (~0) usage within qla2xxx and qla4xxx, as the number of unused entries on the HBA's request-queue shall ultimately be the rate-limiting factor. -- av - 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