1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 29b45ef44SBorislav Petkovmenuconfig RAS 39b45ef44SBorislav Petkov bool "Reliability, Availability and Serviceability (RAS) features" 49b45ef44SBorislav Petkov help 59b45ef44SBorislav Petkov Reliability, availability and serviceability (RAS) is a computer 69b45ef44SBorislav Petkov hardware engineering term. Computers designed with higher levels 79b45ef44SBorislav Petkov of RAS have a multitude of features that protect data integrity 89b45ef44SBorislav Petkov and help them stay available for long periods of time without 99b45ef44SBorislav Petkov failure. 109b45ef44SBorislav Petkov 119b45ef44SBorislav Petkov Reliability can be defined as the probability that the system will 129b45ef44SBorislav Petkov produce correct outputs up to some given time. Reliability is 139b45ef44SBorislav Petkov enhanced by features that help to avoid, detect and repair hardware 149b45ef44SBorislav Petkov faults. 159b45ef44SBorislav Petkov 169b45ef44SBorislav Petkov Availability is the probability a system is operational at a given 179b45ef44SBorislav Petkov time, i.e. the amount of time a device is actually operating as the 189b45ef44SBorislav Petkov percentage of total time it should be operating. 199b45ef44SBorislav Petkov 209b45ef44SBorislav Petkov Serviceability or maintainability is the simplicity and speed with 219b45ef44SBorislav Petkov which a system can be repaired or maintained; if the time to repair 229b45ef44SBorislav Petkov a failed system increases, then availability will decrease. 239b45ef44SBorislav Petkov 249b45ef44SBorislav Petkov Note that Reliability and Availability are distinct concepts: 259b45ef44SBorislav Petkov Reliability is a measure of the ability of a system to function 269b45ef44SBorislav Petkov correctly, including avoiding data corruption, whereas Availability 279b45ef44SBorislav Petkov measures how often it is available for use, even though it may not 289b45ef44SBorislav Petkov be functioning correctly. For example, a server may run forever and 299b45ef44SBorislav Petkov so have ideal availability, but may be unreliable, with frequent 309b45ef44SBorislav Petkov data corruption. 319b45ef44SBorislav Petkov 329b45ef44SBorislav Petkovif RAS 336c36dfe9SBorislav Petkov 34*c8e412f7SThomas Huthconfig RAS_CEC 35*c8e412f7SThomas Huth bool "Correctable Errors Collector" 36*c8e412f7SThomas Huth depends on X86_MCE && MEMORY_FAILURE && DEBUG_FS 37*c8e412f7SThomas Huth help 38*c8e412f7SThomas Huth This is a small cache which collects correctable memory errors per 4K 39*c8e412f7SThomas Huth page PFN and counts their repeated occurrence. Once the counter for a 40*c8e412f7SThomas Huth PFN overflows, we try to soft-offline that page as we take it to mean 41*c8e412f7SThomas Huth that it has reached a relatively high error count and would probably 42*c8e412f7SThomas Huth be best if we don't use it anymore. 43*c8e412f7SThomas Huth 44*c8e412f7SThomas Huth Bear in mind that this is absolutely useless if your platform doesn't 45*c8e412f7SThomas Huth have ECC DIMMs and doesn't have DRAM ECC checking enabled in the BIOS. 46*c8e412f7SThomas Huth 47*c8e412f7SThomas Huthconfig RAS_CEC_DEBUG 48*c8e412f7SThomas Huth bool "CEC debugging machinery" 49*c8e412f7SThomas Huth default n 50*c8e412f7SThomas Huth depends on RAS_CEC 51*c8e412f7SThomas Huth help 52*c8e412f7SThomas Huth Add extra files to (debugfs)/ras/cec to test the correctable error 53*c8e412f7SThomas Huth collector feature. "pfn" is a writable file that allows user to 54*c8e412f7SThomas Huth simulate an error in a particular page frame. "array" is a read-only 55*c8e412f7SThomas Huth file that dumps out the current state of all pages logged so far. 56*c8e412f7SThomas Huth 573f317499SYazen Ghannamsource "drivers/ras/amd/atl/Kconfig" 586c36dfe9SBorislav Petkov 596f15e617SYazen Ghannamconfig RAS_FMPM 606f15e617SYazen Ghannam tristate "FRU Memory Poison Manager" 616f15e617SYazen Ghannam default m 626f15e617SYazen Ghannam depends on AMD_ATL && ACPI_APEI 636f15e617SYazen Ghannam help 646f15e617SYazen Ghannam Support saving and restoring memory error information across reboot 656f15e617SYazen Ghannam using ACPI ERST as persistent storage. Error information is saved with 666f15e617SYazen Ghannam the UEFI CPER "FRU Memory Poison" section format. 676f15e617SYazen Ghannam 686f15e617SYazen Ghannam Memory will be retired during boot time and run time depending on 696f15e617SYazen Ghannam platform-specific policies. 706f15e617SYazen Ghannam 719b45ef44SBorislav Petkovendif 72