diff options
author | Anirban Chakraborty <anirban.chakraborty@qlogic.com> | 2009-08-05 12:18:40 -0400 |
---|---|---|
committer | James Bottomley <James.Bottomley@suse.de> | 2009-08-22 18:52:20 -0400 |
commit | 7163ea815170f8c5d56ead27d7e6fa3fa1f9844b (patch) | |
tree | f85fafb74828242c1be343caa020a45753ec1dfa /drivers/scsi/qla2xxx/qla_init.c | |
parent | 09ccbcc628f71e7f57b4a96982ad1bb2084391d8 (diff) |
[SCSI] qla2xxx: Fix to ensure driver works in sinlge queue mode if multiqueue fails
When the multiqueue mode fails to work, the driver falls back on single
queue mode. This ensures that the firmware is reinitialized with single
queue options and all the resources are readjusted accordingly.
Signed-off-by: Anirban Chakraborty <anirban.chakraborty@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_init.c')
-rw-r--r-- | drivers/scsi/qla2xxx/qla_init.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/scsi/qla2xxx/qla_init.c b/drivers/scsi/qla2xxx/qla_init.c index f2ce8e3cc91b..0cbe39e92506 100644 --- a/drivers/scsi/qla2xxx/qla_init.c +++ b/drivers/scsi/qla2xxx/qla_init.c | |||
@@ -987,7 +987,6 @@ qla2x00_setup_chip(scsi_qla_host_t *vha) | |||
987 | ha->phy_version); | 987 | ha->phy_version); |
988 | if (rval != QLA_SUCCESS) | 988 | if (rval != QLA_SUCCESS) |
989 | goto failed; | 989 | goto failed; |
990 | |||
991 | ha->flags.npiv_supported = 0; | 990 | ha->flags.npiv_supported = 0; |
992 | if (IS_QLA2XXX_MIDTYPE(ha) && | 991 | if (IS_QLA2XXX_MIDTYPE(ha) && |
993 | (ha->fw_attributes & BIT_2)) { | 992 | (ha->fw_attributes & BIT_2)) { |
@@ -3244,7 +3243,7 @@ qla2x00_loop_resync(scsi_qla_host_t *vha) | |||
3244 | struct req_que *req; | 3243 | struct req_que *req; |
3245 | struct rsp_que *rsp; | 3244 | struct rsp_que *rsp; |
3246 | 3245 | ||
3247 | if (ql2xmultique_tag) | 3246 | if (vha->hw->flags.cpu_affinity_enabled) |
3248 | req = vha->hw->req_q_map[0]; | 3247 | req = vha->hw->req_q_map[0]; |
3249 | else | 3248 | else |
3250 | req = vha->req; | 3249 | req = vha->req; |
@@ -4264,7 +4263,7 @@ qla24xx_configure_vhba(scsi_qla_host_t *vha) | |||
4264 | return -EINVAL; | 4263 | return -EINVAL; |
4265 | 4264 | ||
4266 | rval = qla2x00_fw_ready(base_vha); | 4265 | rval = qla2x00_fw_ready(base_vha); |
4267 | if (ql2xmultique_tag) | 4266 | if (ha->flags.cpu_affinity_enabled) |
4268 | req = ha->req_q_map[0]; | 4267 | req = ha->req_q_map[0]; |
4269 | else | 4268 | else |
4270 | req = vha->req; | 4269 | req = vha->req; |