PCI: pci_get_device call from interrupt in reboot fixups
[deliverable/linux.git] / arch / x86 / kernel / reboot_fixups_32.c
index 03e1cce58f499a3712e2e9957a3ef1781d490f2f..139eb03490f5d4f5de597874fad7479add8b86c1 100644 (file)
@@ -11,6 +11,7 @@
 
 #include <asm/delay.h>
 #include <linux/pci.h>
+#include <linux/interrupt.h>
 #include <asm/reboot_fixups.h>
 #include <asm/msr.h>
 
@@ -56,6 +57,11 @@ void mach_reboot_fixups(void)
        struct pci_dev *dev;
        int i;
 
+       /* we can be called from sysrq-B code. In such a case it is
+        * prohibited to dig PCI */
+       if (in_interrupt())
+               return;
+
        for (i=0; i < ARRAY_SIZE(fixups_table); i++) {
                cur = &(fixups_table[i]);
                dev = pci_get_device(cur->vendor, cur->device, NULL);
This page took 0.025179 seconds and 5 git commands to generate.