aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi
diff options
context:
space:
mode:
authorGiridhar Malavali <giridhar.malavali@qlogic.com>2010-09-03 18:20:56 -0400
committerJames Bottomley <James.Bottomley@suse.de>2010-09-05 14:36:25 -0400
commit58548cb51a824276c34a3227a4917d2e2ded0daa (patch)
tree788f6633ff6cb850cf77e4b47683260a2e582a94 /drivers/scsi
parent3fadb80b0f39b193caafeed615a219aae57279fe (diff)
[SCSI] qla2xxx: Increase SG table size to support large IO size per scsi command.
The sg table size is increased from 128 to 1024 to support multiple sg lists and number of sg elements per scsi command. Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi')
-rw-r--r--drivers/scsi/qla2xxx/qla_def.h2
-rw-r--r--drivers/scsi/qla2xxx/qla_os.c12
2 files changed, 12 insertions, 2 deletions
diff --git a/drivers/scsi/qla2xxx/qla_def.h b/drivers/scsi/qla2xxx/qla_def.h
index ee15f4f10fec..df7d74f93e50 100644
--- a/drivers/scsi/qla2xxx/qla_def.h
+++ b/drivers/scsi/qla2xxx/qla_def.h
@@ -2989,6 +2989,8 @@ typedef struct scsi_qla_host {
2989 2989
2990#define CMD_SP(Cmnd) ((Cmnd)->SCp.ptr) 2990#define CMD_SP(Cmnd) ((Cmnd)->SCp.ptr)
2991 2991
2992#define QLA_SG_ALL 1024
2993
2992enum nexus_wait_type { 2994enum nexus_wait_type {
2993 WAIT_HOST = 0, 2995 WAIT_HOST = 0,
2994 WAIT_TARGET, 2996 WAIT_TARGET,
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
index e1782f771400..2e10f2b2e017 100644
--- a/drivers/scsi/qla2xxx/qla_os.c
+++ b/drivers/scsi/qla2xxx/qla_os.c
@@ -2136,8 +2136,16 @@ qla2x00_probe_one(struct pci_dev *pdev, const struct pci_device_id *id)
2136 else 2136 else
2137 base_vha->mgmt_svr_loop_id = MANAGEMENT_SERVER + 2137 base_vha->mgmt_svr_loop_id = MANAGEMENT_SERVER +
2138 base_vha->vp_idx; 2138 base_vha->vp_idx;
2139 if (IS_QLA2100(ha)) 2139
2140 host->sg_tablesize = 32; 2140 /* Set the SG table size based on ISP type */
2141 if (!IS_FWI2_CAPABLE(ha)) {
2142 if (IS_QLA2100(ha))
2143 host->sg_tablesize = 32;
2144 } else {
2145 if (!IS_QLA82XX(ha))
2146 host->sg_tablesize = QLA_SG_ALL;
2147 }
2148
2141 host->max_id = max_id; 2149 host->max_id = max_id;
2142 host->this_id = 255; 2150 host->this_id = 255;
2143 host->cmd_per_lun = 3; 2151 host->cmd_per_lun = 3;