aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pci/pcie/aer
diff options
context:
space:
mode:
authorAndi Kleen <andi@firstfloor.org>2009-09-16 22:40:22 +0200
committerJesse Barnes <jbarnes@virtuousgeek.org>2009-09-17 10:05:27 -0700
commit3e77a3f7895e9c20756dc250282afa12f6d259a3 (patch)
treefe9a701f8c7d86841846b52326fbec89c8e42c29 /drivers/pci/pcie/aer
parentPCI ASPM: support L1 only (diff)
downloadlinux-dev-3e77a3f7895e9c20756dc250282afa12f6d259a3.tar.xz
linux-dev-3e77a3f7895e9c20756dc250282afa12f6d259a3.zip
PCI: Disable AER with pci=nomsi
When booting with pci=nomsi aer causes lost interrupts and lockdep inversions. So check if MSIs are not disabled before initializing the aer driver. Signed-off-by: Andi Kleen <ak@linux.intel.com> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Diffstat (limited to 'drivers/pci/pcie/aer')
-rw-r--r--drivers/pci/pcie/aer/aerdrv.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/pci/pcie/aer/aerdrv.c b/drivers/pci/pcie/aer/aerdrv.c
index 10c0e62bd5a8..2ce8f9ccc66e 100644
--- a/drivers/pci/pcie/aer/aerdrv.c
+++ b/drivers/pci/pcie/aer/aerdrv.c
@@ -318,6 +318,8 @@ static int __init aer_service_init(void)
{
if (pcie_aer_disable)
return -ENXIO;
+ if (!pci_msi_enabled())
+ return -ENXIO;
return pcie_port_service_register(&aerdriver);
}