瀏覽代碼

[SCSI] qla2xxx: Correct late-memset() of EFT buffer.

Original code would clear the buffer after the firmware had
already been initialized to use the buffer, thus potentially
and inadvertantly clearing data previously DMA'd by the
firmware.

Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Andrew Vasquez 17 年之前
父節點
當前提交
fc44765f5a
共有 1 個文件被更改,包括 1 次插入1 次删除
  1. 1 1
      drivers/scsi/qla2xxx/qla_init.c

+ 1 - 1
drivers/scsi/qla2xxx/qla_init.c

@@ -766,6 +766,7 @@ qla2x00_alloc_fw_dump(scsi_qla_host_t *ha)
 			goto cont_alloc;
 			goto cont_alloc;
 		}
 		}
 
 
+		memset(tc, 0, EFT_SIZE);
 		rval = qla2x00_enable_eft_trace(ha, tc_dma, EFT_NUM_BUFFERS);
 		rval = qla2x00_enable_eft_trace(ha, tc_dma, EFT_NUM_BUFFERS);
 		if (rval) {
 		if (rval) {
 			qla_printk(KERN_WARNING, ha, "Unable to initialize "
 			qla_printk(KERN_WARNING, ha, "Unable to initialize "
@@ -779,7 +780,6 @@ qla2x00_alloc_fw_dump(scsi_qla_host_t *ha)
 		    EFT_SIZE / 1024);
 		    EFT_SIZE / 1024);
 
 
 		eft_size = EFT_SIZE;
 		eft_size = EFT_SIZE;
-		memset(tc, 0, eft_size);
 		ha->eft_dma = tc_dma;
 		ha->eft_dma = tc_dma;
 		ha->eft = tc;
 		ha->eft = tc;