소스 검색

scsi: ipr: Fix runaway IRQs when falling back from MSI to LSI

LSIs must be ack'ed with an MMIO otherwise they remain asserted
forever. This is controlled by the "clear_isr" flag.

While we set that flag properly when deciding initially whether to use
LSIs or MSIs, we fail to set it if we first chose MSIs, the test fails,
then fallback to LSIs.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Brian King <brking@linux.vnet.ibm.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Benjamin Herrenschmidt 9 년 전
부모
커밋
9dadfb973f
1개의 변경된 파일1개의 추가작업 그리고 0개의 파일을 삭제
  1. 1 0
      drivers/scsi/ipr.c

+ 1 - 0
drivers/scsi/ipr.c

@@ -10157,6 +10157,7 @@ static int ipr_probe_ioa(struct pci_dev *pdev,
 			pci_free_irq_vectors(pdev);
 
 			ioa_cfg->nvectors = 1;
+			ioa_cfg->clear_isr = 1;
 			break;
 		default:
 			goto out_msi_disable;