浏览代码

MSI: Simplify BUG() handling in pci_disable_msi()

Although it might be nice to do a printk before BUG'ing, it's really not
necessary, and it complicates the code.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Acked-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Michael Ellerman 18 年之前
父节点
当前提交
e387b9eefe
共有 1 个文件被更改,包括 9 次插入12 次删除
  1. 9 12
      drivers/pci/msi.c

+ 9 - 12
drivers/pci/msi.c

@@ -572,18 +572,15 @@ void pci_disable_msi(struct pci_dev* dev)
 	if (!entry || !entry->dev || entry->msi_attrib.type != PCI_CAP_ID_MSI) {
 		return;
 	}
-	if (irq_has_action(dev->first_msi_irq)) {
-		printk(KERN_WARNING "PCI: %s: pci_disable_msi() called without "
-		       "free_irq() on MSI irq %d\n",
-		       pci_name(dev), dev->first_msi_irq);
-		BUG_ON(irq_has_action(dev->first_msi_irq));
-	} else {
-		default_irq = entry->msi_attrib.default_irq;
-		msi_free_irq(dev, dev->first_msi_irq);
-
-		/* Restore dev->irq to its default pin-assertion irq */
-		dev->irq = default_irq;
-	}
+
+	BUG_ON(irq_has_action(dev->first_msi_irq));
+
+	default_irq = entry->msi_attrib.default_irq;
+	msi_free_irq(dev, dev->first_msi_irq);
+
+	/* Restore dev->irq to its default pin-assertion irq */
+	dev->irq = default_irq;
+
 	dev->first_msi_irq = 0;
 }