162306a36Sopenharmony_ciWhat:		/sys/devices/system/machinecheck/machinecheckX/tolerant
262306a36Sopenharmony_ciContact:	Borislav Petkov <bp@suse.de>
362306a36Sopenharmony_ciDate:		Dec, 2021
462306a36Sopenharmony_ciDescription:
562306a36Sopenharmony_ci		Unused and obsolete after the advent of recoverable machine
662306a36Sopenharmony_ci		checks (see last sentence below) and those are present since
762306a36Sopenharmony_ci		2010 (Nehalem).
862306a36Sopenharmony_ci
962306a36Sopenharmony_ci		Original description:
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ci		The entries appear for each CPU, but they are truly shared
1262306a36Sopenharmony_ci		between all CPUs.
1362306a36Sopenharmony_ci
1462306a36Sopenharmony_ci		Tolerance level. When a machine check exception occurs for a
1562306a36Sopenharmony_ci		non corrected machine check the kernel can take different
1662306a36Sopenharmony_ci		actions.
1762306a36Sopenharmony_ci
1862306a36Sopenharmony_ci		Since machine check exceptions can happen any time it is
1962306a36Sopenharmony_ci		sometimes risky for the kernel to kill a process because it
2062306a36Sopenharmony_ci		defies normal kernel locking rules. The tolerance level
2162306a36Sopenharmony_ci		configures how hard the kernel tries to recover even at some
2262306a36Sopenharmony_ci		risk of	deadlock. Higher tolerant values trade potentially
2362306a36Sopenharmony_ci		better uptime with the risk of a crash or even corruption
2462306a36Sopenharmony_ci		(for tolerant >= 3).
2562306a36Sopenharmony_ci
2662306a36Sopenharmony_ci		==  ===========================================================
2762306a36Sopenharmony_ci		 0  always panic on uncorrected errors, log corrected errors
2862306a36Sopenharmony_ci		 1  panic or SIGBUS on uncorrected errors, log corrected errors
2962306a36Sopenharmony_ci		 2  SIGBUS or log uncorrected errors, log corrected errors
3062306a36Sopenharmony_ci		 3  never panic or SIGBUS, log all errors (for testing only)
3162306a36Sopenharmony_ci		==  ===========================================================
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_ci		Default: 1
3462306a36Sopenharmony_ci
3562306a36Sopenharmony_ci		Note this only makes a difference if the CPU allows recovery
3662306a36Sopenharmony_ci		from a machine check exception. Current x86 CPUs generally
3762306a36Sopenharmony_ci		do not.
38