linux/drivers/acpi/apei
Huang Ying 67eb2e9907 ACPI, APEI, GHES, printk support for recoverable error via NMI
Some APEI GHES recoverable errors are reported via NMI, but printk is
not safe in NMI context.

To solve the issue, a lock-less memory allocator is used to allocate
memory in NMI handler, save the error record into the allocated
memory, put the error record into a lock-less list.  On the other
hand, an irq_work is used to delay the operation from NMI context to
IRQ context.  The irq_work IRQ handler will remove nodes from
lock-less list, printk the error record and do some further processing
include recovery operation, then free the memory.

Signed-off-by: Huang Ying <ying.huang@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
2011-08-03 11:15:57 -04:00
..
apei-base.c ACPI, APEI, Add WHEA _OSC support 2011-07-13 23:38:49 -04:00
apei-internal.h ACPI, APEI, Add WHEA _OSC support 2011-07-13 23:38:49 -04:00
cper.c ACPI, APEI, Add PCIe AER error information printing support 2011-03-21 22:59:08 -04:00
einj.c ACPI, APEI, Use apei_exec_run_optional in APEI EINJ and ERST 2011-07-13 23:35:14 -04:00
erst-dbg.c ACPI, APEI, ERST, Fix erst-dbg long record reading issue 2011-07-13 23:31:51 -04:00
erst.c ACPI, APEI, Use apei_exec_run_optional in APEI EINJ and ERST 2011-07-13 23:35:14 -04:00
ghes.c ACPI, APEI, GHES, printk support for recoverable error via NMI 2011-08-03 11:15:57 -04:00
hest.c ACPI, APEI, GHES, Support disable GHES at boot time 2011-07-13 23:36:34 -04:00
Kconfig ACPI, APEI, GHES, printk support for recoverable error via NMI 2011-08-03 11:15:57 -04:00
Makefile ACPI, APEI, ERST debug support 2010-08-14 22:47:55 -04:00