HWPoison: add memory_failure_queue()
authorHuang Ying <ying.huang@intel.com>
Wed, 13 Jul 2011 05:14:27 +0000 (13:14 +0800)
committerLen Brown <len.brown@intel.com>
Wed, 3 Aug 2011 15:15:58 +0000 (11:15 -0400)
commitea8f5fb8a71fddaf5f3a17100d3247855701f732
tree052c3f7e699745394a35063d2a58c4ef0995f3c5
parent152cef40a808d3034e383465b3f7d6783613e458
HWPoison: add memory_failure_queue()

memory_failure() is the entry point for HWPoison memory error
recovery.  It must be called in process context.  But commonly
hardware memory errors are notified via MCE or NMI, so some delayed
execution mechanism must be used.  In MCE handler, a work queue + ring
buffer mechanism is used.

In addition to MCE, now APEI (ACPI Platform Error Interface) GHES
(Generic Hardware Error Source) can be used to report memory errors
too.  To add support to APEI GHES memory recovery, a mechanism similar
to that of MCE is implemented.  memory_failure_queue() is the new
entry point that can be called in IRQ context.  The next step is to
make MCE handler uses this interface too.

Signed-off-by: Huang Ying <ying.huang@intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Wu Fengguang <fengguang.wu@intel.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Len Brown <len.brown@intel.com>
include/linux/mm.h
mm/memory-failure.c