aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi
diff options
context:
space:
mode:
authorGiridhar Malavali <giridhar.malavali@qlogic.com>2010-05-04 18:01:33 -0400
committerJames Bottomley <James.Bottomley@suse.de>2010-05-16 18:22:09 -0400
commitf4c496c1fbaa59dbb3820c18453df661079b1d4a (patch)
tree53e105605dc72674c7f7261130c2b36877f260f0 /drivers/scsi
parent86fbee86e94c7e80c9bb01db0cf68b7977462109 (diff)
[SCSI] qla2xxx: Optionally disable target reset.
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_gbl.h1
-rw-r--r--drivers/scsi/qla2xxx/qla_os.c8
2 files changed, 8 insertions, 1 deletions
diff --git a/drivers/scsi/qla2xxx/qla_gbl.h b/drivers/scsi/qla2xxx/qla_gbl.h
index 3e946da74b96..8217c3bcbc2e 100644
--- a/drivers/scsi/qla2xxx/qla_gbl.h
+++ b/drivers/scsi/qla2xxx/qla_gbl.h
@@ -96,6 +96,7 @@ extern int ql2xdontresethba;
96extern int ql2xasynctmfenable; 96extern int ql2xasynctmfenable;
97extern int ql2xenabledif; 97extern int ql2xenabledif;
98extern int ql2xenablehba_err_chk; 98extern int ql2xenablehba_err_chk;
99extern int ql2xtargetreset;
99 100
100extern int qla2x00_loop_reset(scsi_qla_host_t *); 101extern int qla2x00_loop_reset(scsi_qla_host_t *);
101extern void qla2x00_abort_all_cmds(scsi_qla_host_t *, int); 102extern void qla2x00_abort_all_cmds(scsi_qla_host_t *, int);
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
index 0de92d376677..be1a8fcbb1fb 100644
--- a/drivers/scsi/qla2xxx/qla_os.c
+++ b/drivers/scsi/qla2xxx/qla_os.c
@@ -154,6 +154,12 @@ MODULE_PARM_DESC(ql2xdontresethba,
154 " 0 (Default) -- Reset on failure.\n" 154 " 0 (Default) -- Reset on failure.\n"
155 " 1 -- Do not reset on failure.\n"); 155 " 1 -- Do not reset on failure.\n");
156 156
157int ql2xtargetreset = 1;
158module_param(ql2xtargetreset, int, S_IRUGO|S_IRUSR);
159MODULE_PARM_DESC(ql2xtargetreset,
160 "Enable target reset."
161 "Default is 1 - use hw defaults.");
162
157 163
158int ql2xasynctmfenable; 164int ql2xasynctmfenable;
159module_param(ql2xasynctmfenable, int, S_IRUGO|S_IRUSR); 165module_param(ql2xasynctmfenable, int, S_IRUGO|S_IRUSR);
@@ -1193,7 +1199,7 @@ qla2x00_loop_reset(scsi_qla_host_t *vha)
1193 struct fc_port *fcport; 1199 struct fc_port *fcport;
1194 struct qla_hw_data *ha = vha->hw; 1200 struct qla_hw_data *ha = vha->hw;
1195 1201
1196 if (ha->flags.enable_target_reset) { 1202 if (ql2xtargetreset == 1 && ha->flags.enable_target_reset) {
1197 list_for_each_entry(fcport, &vha->vp_fcports, list) { 1203 list_for_each_entry(fcport, &vha->vp_fcports, list) {
1198 if (fcport->port_type != FCT_TARGET) 1204 if (fcport->port_type != FCT_TARGET)
1199 continue; 1205 continue;