md: wait for behind writes before destroying bitmap
- 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.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: md: wait for behind writes before destroying bitmap __md_stop() destroyed the bitmap before calling mddev_detach(). That made mddev_detach() skip bitmap_ops->wait_behind_writes(), because the bitmap was already disconnected from mddev. This was still safe for the legacy bitmap because bitmap_destroy() waits for behind writes itself. llbitmap keeps that wait in its ->wait_behind_writes() operation instead, while ->destroy() tears down the llbitmap storage. With the old ordering, RAID1 behind-write completions could still run after llbitmap storage had been freed. Call mddev_detach() before md_bitmap_destroy() so the common detach path can wait for behind writes while the bitmap is still alive. Only destroy the bitmap after those users are gone.
Timeline
- CVE published
- Record last updated
Affected versions
- Linux Linux
From 5ab829f1971dc99f2aac10846c378e67fc875abc · fixed in 73881ff7a75913f919a1ce9d9571bfaab8e8588d; From 5ab829f1971dc99f2aac10846c378e67fc875abc · fixed in 4224dccd325a9380e8edfb66aad8bb5771c94222; From 5ab829f1971dc99f2aac10846c378e67fc875abc · fixed in 2a79365b2278f16e163e4024086105693b421601
- Linux Linux
6.18
- KernelLinux
From 6.18.0 · fixed in 6.18.52; From 6.19.0 · fixed in 7.2.6