nvdimm: pmem: keep PREFLUSH before data writes
- 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 6.6.160, 6.12.112, 6.18.52, 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: nvdimm: pmem: keep PREFLUSH before data writes pmem_submit_bio() records a REQ_PREFLUSH error, but continues to copy the bio data and can later overwrite the error with a successful REQ_FUA flush. That lets data writes run after a failed preflush and can complete the bio successfully despite the failed ordering barrier. Run the REQ_PREFLUSH flush synchronously before touching the bio data and complete the bio with the flush error if it fails. Keep asynchronous flush chaining for REQ_FUA. At that point, data copy has completed and the parent bio can wait for the chained flush bio.
Timeline
- CVE published
- Record last updated
Affected versions
- Linux Linux
From c5d4355d10d414a96ca870b731756b89d068d57a · fixed in 22d1f4dcdc9c6d0295c6db0c8933126098b14e05; From c5d4355d10d414a96ca870b731756b89d068d57a · fixed in d34c30bc994328d9cf6749b2e9a32aabd08fd076; From c5d4355d10d414a96ca870b731756b89d068d57a · fixed in 770a90c2127220f0fc194ce909ad4f0842e141cb; From c5d4355d10d414a96ca870b731756b89d068d57a · fixed in 72561ca1ab96f0f0f32737a6171641e05a318538; From c5d4355d10d414a96ca870b731756b89d068d57a · fixed in c644a2f8fef5618fcf453c591177700fd07dd024
- Linux Linux
5.3
- KernelLinux
From 5.3.0 · fixed in 6.6.160; From 6.7.0 · fixed in 6.12.112; From 6.13.0 · fixed in 6.18.52; From 6.19.0 · fixed in 7.2.6