Selaa lähdekoodia

PCI/MSI: Use irq_get_msi_desc() to simplify code

Use irq_get_msi_desc() to get MSI IRQ related msi_desc directly instead of
searching the dev->msi_list.

Signed-off-by: Yijing Wang <wangyijing@huawei.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Yijing Wang 11 vuotta sitten
vanhempi
commit
e11ece5a5e
1 muutettua tiedostoa jossa 5 lisäystä ja 7 poistoa
  1. 5 7
      drivers/pci/msi.c

+ 5 - 7
drivers/pci/msi.c

@@ -487,7 +487,6 @@ EXPORT_SYMBOL_GPL(pci_restore_msi_state);
 static ssize_t msi_mode_show(struct device *dev, struct device_attribute *attr,
 static ssize_t msi_mode_show(struct device *dev, struct device_attribute *attr,
 			     char *buf)
 			     char *buf)
 {
 {
-	struct pci_dev *pdev = to_pci_dev(dev);
 	struct msi_desc *entry;
 	struct msi_desc *entry;
 	unsigned long irq;
 	unsigned long irq;
 	int retval;
 	int retval;
@@ -496,12 +495,11 @@ static ssize_t msi_mode_show(struct device *dev, struct device_attribute *attr,
 	if (retval)
 	if (retval)
 		return retval;
 		return retval;
 
 
-	list_for_each_entry(entry, &pdev->msi_list, list) {
-		if (entry->irq == irq) {
-			return sprintf(buf, "%s\n",
-				       entry->msi_attrib.is_msix ? "msix" : "msi");
-		}
-	}
+	entry = irq_get_msi_desc(irq);
+	if (entry)
+		return sprintf(buf, "%s\n",
+				entry->msi_attrib.is_msix ? "msix" : "msi");
+
 	return -ENODEV;
 	return -ENODEV;
 }
 }