All of lore.kernel.org
 help / color / mirror / Atom feed
* kernel panic becase pci register more than once
@ 2018-09-09  8:26 Tonghao Zhang
  2018-09-17 19:15 ` Bjorn Helgaas
  0 siblings, 1 reply; 5+ messages in thread
From: Tonghao Zhang @ 2018-09-09  8:26 UTC (permalink / raw)
  To: linux-pci

Hi all,
When I enable pci msi or msix more than once, the kernel will panic.
Now we just use the WARN_ON, should we add check for that has been
enabled.

diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c
index f2ef896..324840f 100644
--- a/drivers/pci/msi.c
+++ b/drivers/pci/msi.c
@@ -958,7 +958,9 @@ static int __pci_enable_msix(struct pci_dev *dev,
struct msix_entry *entries,
                        }
                }
        }
-       WARN_ON(!!dev->msix_enabled);
+
+       if (dev->msix_enabled)
+               return -EINVAL;

        /* Check whether driver already requested for MSI irq */
        if (dev->msi_enabled) {
@@ -1028,7 +1030,8 @@ static int __pci_enable_msi_range(struct pci_dev
*dev, int minvec, int maxvec,
        if (!pci_msi_supported(dev, minvec))
                return -EINVAL;

-       WARN_ON(!!dev->msi_enabled);
+       if (dev->msi_enabled)
+               return -EINVAL;

        /* Check whether driver already requested MSI-X irqs */
        if (dev->msix_enabled) {

^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2018-09-20  6:40 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-09-09  8:26 kernel panic becase pci register more than once Tonghao Zhang
2018-09-17 19:15 ` Bjorn Helgaas
2018-09-18  2:00   ` Tonghao Zhang
2018-09-18 13:46     ` Bjorn Helgaas
2018-09-20  6:40   ` Christoph Hellwig

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.