Description
In the Linux kernel, the following vulnerability has been resolved: ACPI: APEI: send SIGBUS to current task if synchronous memory error not recovered If a synchronous error is detected as a result of user-space process triggering a 2-bit uncorrected error, the CPU will take a synchronous error exception such as Synchronous External Abort (SEA) on Arm64. The kernel will queue a memory_failure() work which poisons the related page, unmaps the page, and then sends a SIGBUS to the process, so that a system wide panic can be avoided. However, no memory_failure() work will be queued when abnormal synchronous errors occur. These errors can include situations like invalid PA, unexpected severity, no memory failure config support, invalid GUID section, etc. In such a case, the user-space process will trigger SEA again. This loop can potentially exceed the platform firmware threshold or even trigger a kernel hard lockup, leading to a system reboot. Fix it by performing a force kill if no memory_failure() work is queued for synchronous errors. [ rjw: Changelog edits ]
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
8fcc4ae6faf8b455eeef00bc9ae70744e3b0f462 to < 2fbc85da9ac9386bd89fcc94e0aadaea19d47784affected8fcc4ae6faf8b455eeef00bc9ae70744e3b0f462 to < 082735fbcdb6cd0cf20fbec94516ab2996f1cdd5affected8fcc4ae6faf8b455eeef00bc9ae70744e3b0f462 to < cfc9bc15bda6fd0c496cbe2c628564d4d7c332c1affected8fcc4ae6faf8b455eeef00bc9ae70744e3b0f462 to < af089e41811a1ad6a7b2b80e839a73ec4c3cecddaffected8fcc4ae6faf8b455eeef00bc9ae70744e3b0f462 to < 3cb4f18797247985b0f51d5300f8cb6c78f343eaaffected8fcc4ae6faf8b455eeef00bc9ae70744e3b0f462 to < 79a5ae3c4c5eb7e38e0ebe4d6bf602d296080060affectedaf02933d59bd1621a48d8b0b331cca9e530ba14baffected5.4.69 to < 5.5affected
Linux Linux
Default version status: affected
5.8affected0 to < 5.8unaffected6.1.164 to ≤ 6.1.*unaffected6.6.103 to ≤ 6.6.*unaffected6.12.43 to ≤ 6.12.*unaffected6.15.11 to ≤ 6.15.*unaffected6.16.2 to ≤ 6.16.*unaffected6.17 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/2fbc85da9ac9386bd89fcc94e0aadaea19d47784 ↗
- https://git.kernel.org/stable/c/082735fbcdb6cd0cf20fbec94516ab2996f1cdd5 ↗
- https://git.kernel.org/stable/c/cfc9bc15bda6fd0c496cbe2c628564d4d7c332c1 ↗
- https://git.kernel.org/stable/c/af089e41811a1ad6a7b2b80e839a73ec4c3cecdd ↗
- https://git.kernel.org/stable/c/3cb4f18797247985b0f51d5300f8cb6c78f343ea ↗
- https://git.kernel.org/stable/c/79a5ae3c4c5eb7e38e0ebe4d6bf602d296080060 ↗