浏览代码

[SCSI] megaraid_sas: add readl to force PCI posting flush

MegaRAID SAS Driver get unexpected Interrupt.  Add the dummy readl to
force PCI flush will fix this issue.

Signed-off-by: Bo Yang <bo.yang@lsi.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Cc: Stable Tree <stable@kernel.org>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Yang, Bo 16 年之前
父节点
当前提交
06f579dee5
共有 1 个文件被更改,包括 6 次插入0 次删除
  1. 6 0
      drivers/scsi/megaraid/megaraid_sas.c

+ 6 - 0
drivers/scsi/megaraid/megaraid_sas.c

@@ -198,6 +198,9 @@ megasas_clear_intr_xscale(struct megasas_register_set __iomem * regs)
 	 */
 	 */
 	writel(status, &regs->outbound_intr_status);
 	writel(status, &regs->outbound_intr_status);
 
 
+	/* Dummy readl to force pci flush */
+	readl(&regs->outbound_intr_status);
+
 	return 0;
 	return 0;
 }
 }
 
 
@@ -293,6 +296,9 @@ megasas_clear_intr_ppc(struct megasas_register_set __iomem * regs)
 	 */
 	 */
 	writel(status, &regs->outbound_doorbell_clear);
 	writel(status, &regs->outbound_doorbell_clear);
 
 
+	/* Dummy readl to force pci flush */
+	readl(&regs->outbound_doorbell_clear);
+
 	return 0;
 	return 0;
 }
 }
 /**
 /**