diff options
author | Andrew Vasquez <andrew.vasquez@qlogic.com> | 2012-02-09 11:14:06 -0800 |
---|---|---|
committer | James Bottomley <JBottomley@Parallels.com> | 2012-02-18 08:44:51 -0600 |
commit | 4ba988db8d60eb16b7da69f9e3705b52ac8a6540 (patch) | |
tree | e6c35c8ceb12898ca70715ce85341949d0ae6595 /drivers/scsi/qla2xxx | |
parent | d051a5aa1c234c8de01fc0a488b1a18d65246150 (diff) | |
download | lwn-4ba988db8d60eb16b7da69f9e3705b52ac8a6540.tar.gz lwn-4ba988db8d60eb16b7da69f9e3705b52ac8a6540.zip |
[SCSI] qla2xxx: Clear options-flags while issuing stop-firmware mbx command.
Not clearing the options flags in mbx1 could lead the firmware
into interpreting old data in mbx1 through mbx8. This could
lead to inadvertent DMA read/write operations to stale memory.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/qla2xxx')
-rw-r--r-- | drivers/scsi/qla2xxx/qla_mbx.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/scsi/qla2xxx/qla_mbx.c b/drivers/scsi/qla2xxx/qla_mbx.c index 34344d3f8658..8635722332a0 100644 --- a/drivers/scsi/qla2xxx/qla_mbx.c +++ b/drivers/scsi/qla2xxx/qla_mbx.c @@ -2581,7 +2581,8 @@ qla2x00_stop_firmware(scsi_qla_host_t *vha) ql_dbg(ql_dbg_mbx, vha, 0x10a1, "Entered %s.\n", __func__); mcp->mb[0] = MBC_STOP_FIRMWARE; - mcp->out_mb = MBX_0; + mcp->mb[1] = 0; + mcp->out_mb = MBX_1|MBX_0; mcp->in_mb = MBX_0; mcp->tov = 5; mcp->flags = 0; |