scsi: qla2xxx: Check for firmware dump already collected
authorJoe Carnuccio <joe.carnuccio@cavium.com>
Mon, 10 Jan 2022 05:02:17 +0000 (21:02 -0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 25 Jan 2022 04:57:32 +0000 (23:57 -0500)
While allocating firmware dump, check if dump is already collected and do
not re-allocate the buffer.

Link: https://lore.kernel.org/r/20220110050218.3958-17-njavali@marvell.com
Cc: stable@vger.kernel.org
Signed-off-by: Joe Carnuccio <joe.carnuccio@cavium.com>
Signed-off-by: Nilesh Javali <njavali@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/qla2xxx/qla_init.c

index acc39a08454c80aa39c99df7da8fcdc07dd789f6..835ed417988739ce4609639479ca36f57f459a14 100644 (file)
@@ -3482,6 +3482,14 @@ qla2x00_alloc_fw_dump(scsi_qla_host_t *vha)
        struct rsp_que *rsp = ha->rsp_q_map[0];
        struct qla2xxx_fw_dump *fw_dump;
 
+       if (ha->fw_dump) {
+               ql_dbg(ql_dbg_init, vha, 0x00bd,
+                   "Firmware dump already allocated.\n");
+               return;
+       }
+
+       ha->fw_dumped = 0;
+       ha->fw_dump_cap_flags = 0;
        dump_size = fixed_size = mem_size = eft_size = fce_size = mq_size = 0;
        req_q_size = rsp_q_size = 0;