# SPDX-License-Identifier: GPL-2.0-only
menuconfig RAS
	bool "Reliability, Availability and Serviceability (RAS) features"
	help
	  Reliability, availability and serviceability (RAS) is a computer
	  hardware engineering term. Computers designed with higher levels
	  of RAS have a multitude of features that protect data integrity
	  and help them stay available for long periods of time without
	  failure.

	  Reliability can be defined as the probability that the system will
	  produce correct outputs up to some given time. Reliability is
	  enhanced by features that help to avoid, detect and repair hardware
	  faults.

	  Availability is the probability a system is operational at a given
	  time, i.e. the amount of time a device is actually operating as the
	  percentage of total time it should be operating.

	  Serviceability or maintainability is the simplicity and speed with
	  which a system can be repaired or maintained; if the time to repair
	  a failed system increases, then availability will decrease.

	  Note that Reliability and Availability are distinct concepts:
	  Reliability is a measure of the ability of a system to function
	  correctly, including avoiding data corruption, whereas Availability
	  measures how often it is available for use, even though it may not
	  be functioning correctly. For example, a server may run forever and
	  so have ideal availability, but may be unreliable, with frequent
	  data corruption.

config PAGE_EJECT
	tristate "page eject"
	default m
	depends on MEMORY_FAILURE
	help
	  Used to eject page, which is achieved by soft_offline_page and
	  unpoison_memory. A linked list is maintained to log the pfns
	  which are offlined by this module. Only the pfns present in the
	  list is allowed to go online.

if RAS

source "arch/x86/ras/Kconfig"

endif
