Memory failure provides the ability of soft offline pages, which is very useful to handle the memory errors such as CE in ECC. Although ARM does not have a user interface like `/sys/devices/system/memory/soft_offline_page`, memory-failure still provides some exported func that can be used by some module ko driver. Memory-failure will use one page flag (PG_hwpoison). For historical versions, this will cause the page flags to exceed the 32-bit limit (when CONFIG_SPARSEMEM and CONFIG_HIGHMEM are both enabled), and therefore it cannot be enabled. The following commit: commit 09022bc196d2 ("mm: remove PG_error") removes a page flag, so memory-failure can now be launched on ARM now. The core codes of memory-failure is architecture independent, in fact, it has performed well in current testing. Perhaps it can also be enabled on other 32-bit architectures(like x86, and it seems that it can already be enabled on 32-bit parisc architecture), but I haven't tested it yet. Signed-off-by: Xie Yuanbin --- arch/arm/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 5527935fd15a..b38c194a5cc4 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -149,20 +149,21 @@ config ARM select PCI_SYSCALL if PCI select PERF_USE_VMALLOC select RTC_LIB select SPARSE_IRQ if !(ARCH_FOOTBRIDGE || ARCH_RPC) select SYS_SUPPORTS_APM_EMULATION select THREAD_INFO_IN_TASK select TIMER_OF if OF select HAVE_ARCH_VMAP_STACK if MMU && ARM_HAS_GROUP_RELOCS select TRACE_IRQFLAGS_SUPPORT if !CPU_V7M select USE_OF if !(ARCH_FOOTBRIDGE || ARCH_RPC || ARCH_SA1100) + select ARCH_SUPPORTS_MEMORY_FAILURE # Above selects are sorted alphabetically; please add new ones # according to that. Thanks. help The ARM series is a line of low-power-consumption RISC chip designs licensed by ARM Ltd and targeted at embedded applications and handhelds such as the Compaq IPAQ. ARM-based PCs are no longer manufactured, but legacy ARM-based PC hardware remains popular in Europe. There is an ARM Linux project with a web page at . -- 2.48.1