diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index 93698794aa3a7b3189ee427a105e1b20e88ef103..8da93745c08790f8e8fa431b010f3ba08fd49a9b 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -432,6 +432,17 @@ config X86_NUMAQ of Flat Logical. You will need a new lynxer.elf file to flash your firmware with - send email to . +config X86_SUPPORTS_MEMORY_FAILURE + bool + # MCE code calls memory_failure(): + depends on X86_MCE + # On 32-bit this adds too big of NODES_SHIFT and we run out of page flags: + depends on !X86_NUMAQ + # On 32-bit SPARSEMEM adds too big of SECTIONS_WIDTH: + depends on X86_64 || !SPARSEMEM + select ARCH_SUPPORTS_MEMORY_FAILURE + default y + config X86_VISWS bool "SGI 320/540 (Visual Workstation)" depends on X86_32 && PCI && X86_MPPARSE && PCI_GODIRECT diff --git a/mm/Kconfig b/mm/Kconfig index 247760729593d37f841655dd54ec4572523255f7..edd300aca17309cfb6c2e1ef9cef2fcf36de1d74 100644 --- a/mm/Kconfig +++ b/mm/Kconfig @@ -244,10 +244,12 @@ config DEFAULT_MMAP_MIN_ADDR This value can be changed after boot using the /proc/sys/vm/mmap_min_addr tunable. +config ARCH_SUPPORTS_MEMORY_FAILURE + bool config MEMORY_FAILURE depends on MMU - depends on X86_MCE + depends on ARCH_SUPPORTS_MEMORY_FAILURE bool "Enable recovery from hardware memory errors" help Enables code to recover from some memory failures on systems