Description
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 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
ed83f7ca398b3798b82c1d5d1113011c0e5a2198 to < 86771c105293ca26bfcc320b4f60d32c137b54aaaffecteded83f7ca398b3798b82c1d5d1113011c0e5a2198 to < 42eab80981f4d2ac820e253e80ecf92f8cd91f69affecteded83f7ca398b3798b82c1d5d1113011c0e5a2198 to < 6ad491cef1a812cf7b53aa769cd8869516c47362affecteded83f7ca398b3798b82c1d5d1113011c0e5a2198 to < e77594e0cea67ab1c2317a27aa77a744e26ad6a6affecteded83f7ca398b3798b82c1d5d1113011c0e5a2198 to < 8b301c4afbce4bc3f94528441d8d5ce1366504adaffected
Linux Linux
Default version status: affected
6.4affected0 to < 6.4unaffected6.6.157 to ≤ 6.6.*unaffected6.12.110 to ≤ 6.12.*unaffected6.18.52 to ≤ 6.18.*unaffected7.2.6 to ≤ 7.2.*unaffected7.3 to ≤ *unaffected
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 ↗