Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9bceab4e authored by Steve Hodgson's avatar Steve Hodgson Committed by James Bottomley
Browse files

[SCSI] qla2xxx: Free rsp_data even on error in qla2x00_process_loopback()



Signed-off-by: default avatarSteve Hodgson <steve@purestorage.com>
Signed-off-by: default avatarArmen Baloyan <armen.baloyan@qlogic.com>
Signed-off-by: default avatarSaurav Kashyap <saurav.kashyap@qlogic.com>
Cc: <stable@vger.kernel.org> #3.7
Signed-off-by: default avatarJames Bottomley <JBottomley@Parallels.com>
parent 220d36b4
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -743,7 +743,7 @@ qla2x00_process_loopback(struct fc_bsg_job *bsg_job)
				ql_log(ql_log_warn, vha, 0x701f,
				    "Get port config failed.\n");
				rval = -EPERM;
				goto done_free_dma_req;
				goto done_free_dma_rsp;
			}

			ql_dbg(ql_dbg_user, vha, 0x70c0,
@@ -762,7 +762,7 @@ qla2x00_process_loopback(struct fc_bsg_job *bsg_job)

			if (rval) {
				rval = -EPERM;
				goto done_free_dma_req;
				goto done_free_dma_rsp;
			}

			type = "FC_BSG_HST_VENDOR_LOOPBACK";
@@ -795,7 +795,7 @@ qla2x00_process_loopback(struct fc_bsg_job *bsg_job)
				}

				rval = -EIO;
				goto done_free_dma_req;
				goto done_free_dma_rsp;
			}
		} else {
			type = "FC_BSG_HST_VENDOR_LOOPBACK";
@@ -830,6 +830,7 @@ qla2x00_process_loopback(struct fc_bsg_job *bsg_job)
	fw_sts_ptr += sizeof(response);
	*fw_sts_ptr = command_sent;

done_free_dma_rsp:
	dma_free_coherent(&ha->pdev->dev, rsp_data_len,
		rsp_data, rsp_data_dma);
done_free_dma_req: