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