Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: cxl/mbox: Break poison list loop on an empty payload A device that returns count == 0 with CXL_POISON_FLAG_MORE set on every iteration never advances nr_records, so the max_errors guard never trips and the do/while loops forever while holding poison.mutex. That hangs the sysfs-triggered scan thread and blocks all subsequent poison operations on the device. The existing "Protect against an uncleared _FLAG_MORE" guard was intended to bound a misbehaving device but does not cover the count == 0 case. Stop the loop on an empty payload so a malfunctioning or malicious device cannot wedge the poison scan.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected ed83f7ca398b3798b82c1d5d1113011c0e5a2198 before 86771c105293ca26bfcc320b4f60d32c137b54aa; affected ed83f7ca398b3798b82c1d5d1113011c0e5a2198 before 42eab80981f4d2ac820e253e80ecf92f8cd91f69; affected ed83f7ca398b3798b82c1d5d1113011c0e5a2198 before 6ad491cef1a812cf7b53aa769cd8869516c47362; affected ed83f7ca398b3798b82c1d5d1113011c0e5a2198 before e77594e0cea67ab1c2317a27aa77a744e26ad6a6; affected ed83f7ca398b3798b82c1d5d1113011c0e5a2198 before 8b301c4afbce4bc3f94528441d8d5ce1366504ad |
| Linux / Linux | affected 6.4; unaffected 0 before 6.4; unaffected 6.6.157 through 6.6.*; unaffected 6.12.110 through 6.12.*; unaffected 6.18.52 through 6.18.*; unaffected 7.2.6 through 7.2.*; unaffected 7.3 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/86771c105293ca26bfcc320b4f60d32c137b54aa
- https://git.kernel.org/stable/c/42eab80981f4d2ac820e253e80ecf92f8cd91f69
- https://git.kernel.org/stable/c/6ad491cef1a812cf7b53aa769cd8869516c47362
- https://git.kernel.org/stable/c/e77594e0cea67ab1c2317a27aa77a744e26ad6a6
- https://git.kernel.org/stable/c/8b301c4afbce4bc3f94528441d8d5ce1366504ad