From: Quinn Tran <quinn.tran@qlogic.com>
Date: Thu, 25 Sep 2014 09:16:53 +0000 (-0400)
Subject: qla2xxx: Declaration error cause stack corruption.
X-Git-Tag: v3.18-rc1~140^2^2~56
X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=93f2bd67b34b4f6b35b2300d668d92e3fd01163a;p=linux.git

qla2xxx: Declaration error cause stack corruption.

Declaration error of mb array in qla2x00_iidma_fcport cause data
to be written beyond the array. This ends up causing stack corruption.

Signed-off-by: Quinn Tran <quinn.tran@qlogic.com>
Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
---

diff --git a/drivers/scsi/qla2xxx/qla_init.c b/drivers/scsi/qla2xxx/qla_init.c
index d5b10ecde4a0..ab22ccf4c7d3 100644
--- a/drivers/scsi/qla2xxx/qla_init.c
+++ b/drivers/scsi/qla2xxx/qla_init.c
@@ -3192,7 +3192,7 @@ static void
 qla2x00_iidma_fcport(scsi_qla_host_t *vha, fc_port_t *fcport)
 {
 	int rval;
-	uint16_t mb[4];
+	uint16_t mb[MAILBOX_REGISTER_COUNT];
 	struct qla_hw_data *ha = vha->hw;
 
 	if (!IS_IIDMA_CAPABLE(ha))