OpenCloudOS-Kernel/drivers/pci/pcie/aer
Lance Ortiz 37448adfc7 aerdrv: Move cper_print_aer() call out of interrupt context
The following warning was seen on 3.9 when a corrected PCIe error was being
handled by the AER subsystem.

WARNING: at .../drivers/pci/search.c:214 pci_get_dev_by_id+0x8a/0x90()

This occurred because a call to pci_get_domain_bus_and_slot() was added to
cper_print_pcie() to setup for the call to cper_print_aer().  The warning
showed up because cper_print_pcie() is called in an interrupt context and
pci_get* functions are not supposed to be called in that context.

The solution is to move the cper_print_aer() call out of the interrupt
context and into aer_recover_work_func() to avoid any warnings when calling
pci_get* functions.

Signed-off-by: Lance Ortiz <lance.ortiz@hp.com>
Acked-by: Borislav Petkov <bp@suse.de>
Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
2013-05-30 10:51:20 -07:00
..
Kconfig PCI AER: software error injection 2009-06-16 14:30:14 -07:00
Kconfig.debug PCI: change PCI nomenclature in drivers/pci/ (non-comment changes) 2009-12-16 13:37:54 -08:00
Makefile PCI AER: software error injection 2009-06-16 14:30:14 -07:00
aer_inject.c Merge branch 'pci/cleanup' into next 2013-04-17 10:31:34 -06:00
aerdrv.c PCI: Remove __dev* markings 2012-11-28 13:16:47 -08:00
aerdrv.h PCI: Remove "extern" from function declarations 2013-04-17 10:21:17 -06:00
aerdrv_acpi.c PCI: Introduce pci_pcie_type(dev) to replace pci_dev->pcie_type 2012-08-23 09:40:57 -06:00
aerdrv_core.c aerdrv: Move cper_print_aer() call out of interrupt context 2013-05-30 10:51:20 -07:00
aerdrv_errprint.c aerdrv: Move cper_print_aer() call out of interrupt context 2013-05-30 10:51:20 -07:00
ecrc.c PCIe AER: use pci_is_pcie() 2009-11-24 15:25:17 -08:00