fs/proc: fix softlockup in __read_vmcore (part 2)
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 5.4.290, 5.10.234, 5.15.177, 6.1.127, 6.6.74, and 3 more
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: no
- Technical impact: partial
Summary
In the Linux kernel, the following vulnerability has been resolved: fs/proc: fix softlockup in __read_vmcore (part 2) Since commit 5cbcb62dddf5 ("fs/proc: fix softlockup in __read_vmcore") the number of softlockups in __read_vmcore at kdump time have gone down, but they still happen sometimes. In a memory constrained environment like the kdump image, a softlockup is not just a harmless message, but it can interfere with things like RCU freeing memory, causing the crashdump to get stuck. The second loop in __read_vmcore has a lot more opportunities for natural sleep points, like scheduling out while waiting for a data write to happen, but apparently that is not always enough. Add a cond_resched() to the second loop in __read_vmcore to (hopefully) get rid of the softlockups.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: no · Technical impact: partial
- Record last updated
Affected versions
- Linux Linux
From 803d5a33d5ffdc2d86dcc0cfa01655a330612cdb · fixed in 84c4ed15626574c9ac6c1039ba9c137a77bcc7f2; From 70c1835e776c8447c1aca87ddb38cfe764fe756a · fixed in 80da29deb88a3a907441fc35bb7bac309f31e713; From e1b160a50c756e0efbea290b9bf5117cb80e8c4b · fixed in 649b266606bc413407ce315f710c8ce8a88ee30a; From a373ad833a6bfe4bc6cedcf7e56a99cc6fd9a193 · fixed in 65c367bd9d4f43513c7f837df5753bea9561b836; From 518fbd644dabb6aedbdd4939c6c9cc1bf651459f · fixed in a5a2ee8144c3897d37403a69118c3e3dc5713958; From 5cbcb62dddf5346077feb82b7b0c9254222d3445 · fixed in 80828540dad0757b6337c6561d49c81038f38d87; From 5cbcb62dddf5346077feb82b7b0c9254222d3445 · fixed in cbc5dde0a461240046e8a41c43d7c3b76d5db952; From 5.4.279 · fixed in 5.4.290; From 5.10.221 · fixed in 5.10.234; From 5.15.162 · fixed in 5.15.177; From 6.1.95 · fixed in 6.1.127; From 6.6.35 · fixed in 6.6.74; From 4.19.317 · fixed in 4.20; From 6.9.6 · fixed in 6.10
- Linux Linux
6.10
- KernelLinux
fixed in 5.4.290; From 5.5.0 · fixed in 5.10.234; From 5.11.0 · fixed in 5.15.177; From 5.16.0 · fixed in 6.1.127; From 6.2.0 · fixed in 6.6.74; From 6.7.0 · fixed in 6.12.11
References 7
git.kernel.org
- stable/c/84c4ed15626574c9ac6c1039ba9c137a77bcc7f2
- stable/c/80da29deb88a3a907441fc35bb7bac309f31e713
- stable/c/649b266606bc413407ce315f710c8ce8a88ee30a
- stable/c/65c367bd9d4f43513c7f837df5753bea9561b836
- stable/c/a5a2ee8144c3897d37403a69118c3e3dc5713958
- stable/c/80828540dad0757b6337c6561d49c81038f38d87
- stable/c/cbc5dde0a461240046e8a41c43d7c3b76d5db952