aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/scsi/qla2xxx/qla_def.h1
-rw-r--r--drivers/scsi/qla2xxx/qla_nx.c12
-rw-r--r--drivers/scsi/qla2xxx/qla_nx2.c3
-rw-r--r--drivers/scsi/qla2xxx/qla_os.c1
4 files changed, 11 insertions, 6 deletions
diff --git a/drivers/scsi/qla2xxx/qla_def.h b/drivers/scsi/qla2xxx/qla_def.h
index 89bece72ef66..bab1cf12d1e9 100644
--- a/drivers/scsi/qla2xxx/qla_def.h
+++ b/drivers/scsi/qla2xxx/qla_def.h
@@ -3141,6 +3141,7 @@ struct qla_hw_data {
3141 uint32_t fw_dump_len; 3141 uint32_t fw_dump_len;
3142 int fw_dumped; 3142 int fw_dumped;
3143 int fw_dump_reading; 3143 int fw_dump_reading;
3144 int prev_minidump_failed;
3144 dma_addr_t eft_dma; 3145 dma_addr_t eft_dma;
3145 void *eft; 3146 void *eft;
3146/* Current size of mctp dump is 0x086064 bytes */ 3147/* Current size of mctp dump is 0x086064 bytes */
diff --git a/drivers/scsi/qla2xxx/qla_nx.c b/drivers/scsi/qla2xxx/qla_nx.c
index 81388e957237..3c5819ae451b 100644
--- a/drivers/scsi/qla2xxx/qla_nx.c
+++ b/drivers/scsi/qla2xxx/qla_nx.c
@@ -3142,18 +3142,18 @@ qla82xx_check_md_needed(scsi_qla_host_t *vha)
3142 3142
3143 if (ql2xmdenable) { 3143 if (ql2xmdenable) {
3144 if (!ha->fw_dumped) { 3144 if (!ha->fw_dumped) {
3145 if (fw_major_version != ha->fw_major_version || 3145 if ((fw_major_version != ha->fw_major_version ||
3146 fw_minor_version != ha->fw_minor_version || 3146 fw_minor_version != ha->fw_minor_version ||
3147 fw_subminor_version != ha->fw_subminor_version) { 3147 fw_subminor_version != ha->fw_subminor_version) ||
3148 (ha->prev_minidump_failed)) {
3148 ql_dbg(ql_dbg_p3p, vha, 0xb02d, 3149 ql_dbg(ql_dbg_p3p, vha, 0xb02d,
3149 "Firmware version differs " 3150 "Firmware version differs Previous version: %d:%d:%d - New version: %d:%d:%d, prev_minidump_failed: %d.\n",
3150 "Previous version: %d:%d:%d - "
3151 "New version: %d:%d:%d\n",
3152 fw_major_version, fw_minor_version, 3151 fw_major_version, fw_minor_version,
3153 fw_subminor_version, 3152 fw_subminor_version,
3154 ha->fw_major_version, 3153 ha->fw_major_version,
3155 ha->fw_minor_version, 3154 ha->fw_minor_version,
3156 ha->fw_subminor_version); 3155 ha->fw_subminor_version,
3156 ha->prev_minidump_failed);
3157 /* Release MiniDump resources */ 3157 /* Release MiniDump resources */
3158 qla82xx_md_free(vha); 3158 qla82xx_md_free(vha);
3159 /* ALlocate MiniDump resources */ 3159 /* ALlocate MiniDump resources */
diff --git a/drivers/scsi/qla2xxx/qla_nx2.c b/drivers/scsi/qla2xxx/qla_nx2.c
index e381835a10b4..d36a62377c09 100644
--- a/drivers/scsi/qla2xxx/qla_nx2.c
+++ b/drivers/scsi/qla2xxx/qla_nx2.c
@@ -3125,6 +3125,7 @@ skip_nxt_entry:
3125 "Dump data mismatch: Data collected: " 3125 "Dump data mismatch: Data collected: "
3126 "[0x%x], total_data_size:[0x%x]\n", 3126 "[0x%x], total_data_size:[0x%x]\n",
3127 data_collected, ha->md_dump_size); 3127 data_collected, ha->md_dump_size);
3128 rval = QLA_FUNCTION_FAILED;
3128 goto md_failed; 3129 goto md_failed;
3129 } 3130 }
3130 3131
@@ -3149,10 +3150,12 @@ qla8044_get_minidump(struct scsi_qla_host *vha)
3149 3150
3150 if (!qla8044_collect_md_data(vha)) { 3151 if (!qla8044_collect_md_data(vha)) {
3151 ha->fw_dumped = 1; 3152 ha->fw_dumped = 1;
3153 ha->prev_minidump_failed = 0;
3152 } else { 3154 } else {
3153 ql_log(ql_log_fatal, vha, 0xb0db, 3155 ql_log(ql_log_fatal, vha, 0xb0db,
3154 "%s: Unable to collect minidump\n", 3156 "%s: Unable to collect minidump\n",
3155 __func__); 3157 __func__);
3158 ha->prev_minidump_failed = 1;
3156 } 3159 }
3157} 3160}
3158 3161
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
index 1b1cd75a7aa0..0114ea4e87cd 100644
--- a/drivers/scsi/qla2xxx/qla_os.c
+++ b/drivers/scsi/qla2xxx/qla_os.c
@@ -2885,6 +2885,7 @@ skip_dpc:
2885 2885
2886 base_vha->flags.init_done = 1; 2886 base_vha->flags.init_done = 1;
2887 base_vha->flags.online = 1; 2887 base_vha->flags.online = 1;
2888 ha->prev_minidump_failed = 0;
2888 2889
2889 ql_dbg(ql_dbg_init, base_vha, 0x00f2, 2890 ql_dbg(ql_dbg_init, base_vha, 0x00f2,
2890 "Init done and hba is online.\n"); 2891 "Init done and hba is online.\n");