md: remove REQ_NOWAIT support from raid1/10/456
- 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.16, 6.18.57, 7.2.6
- 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
Summary
In the Linux kernel, the following vulnerability has been resolved: md: remove REQ_NOWAIT support from raid1/10/456 REQ_NOWAIT support in md personalities that can block internally is fundamentally incomplete. While reads can avoid some blocking paths, write requests can still encounter cases where one mirror succeeds while another returns -EAGAIN. At that point md cannot distinguish queue pressure from a real device failure, so it can neither record a bad block nor safely retry the write without REQ_NOWAIT, leaving mirrors with divergent data. Rather than continue advertising REQ_NOWAIT support for personalities that cannot implement it correctly, remove it from raid1, raid10 and raid456. Keep REQ_NOWAIT for linear and raid0, which only remap bios to their underlying devices; stacked limits will still clear the feature if any component device lacks REQ_NOWAIT support.
Timeline
- CVE published
- Record last updated
Affected versions
- Linux Linux
From f51d46d0e7cb5b8494aa534d276a9d8915a2443d · fixed in ffcc9ea4e4d121c78aef6654a1577aa7d120774d; From f51d46d0e7cb5b8494aa534d276a9d8915a2443d · fixed in 9bb9504e2d8f3d22ef12d51c333dd499f402dc8f; From f51d46d0e7cb5b8494aa534d276a9d8915a2443d · fixed in 3fe5b7c9fb72ccc29bfd0f955b124892af7e3674; From 5.15.111 · fixed in 5.16
- Linux Linux
5.17
- KernelLinux
From 5.17.0 · fixed in 6.18.57; From 6.19.0 · fixed in 7.2.6