xfs: stop reclaim before pushing AIL during unmount
- 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
- 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: xfs: stop reclaim before pushing AIL during unmount The unmount sequence in xfs_unmount_flush_inodes() pushed the AIL while background reclaim and inodegc are still running. This is broken independently of any use-after-free issues - background reclaim and inodegc should not be running while the AIL is being pushed during unmount, as inodegc can dirty and insert inodes into the AIL during the flush, and background reclaim can race to abort and free dirty inodes. Reorder xfs_unmount_flush_inodes() to stop inodegc and cancel background reclaim before pushing the AIL. Stop inodegc before cancelling m_reclaim_work because the inodegc worker can re-queue m_reclaim_work via xfs_inodegc_set_reclaimable.
Timeline
- CVE published
- Record last updated
Affected versions
- Linux Linux
Version range not reported
- Linux Linux
5.9
References 8
git.kernel.org
- stable/c/e6cc490048f78b009259a5f032acead9f789c34c
- stable/c/239d734c00644072862fa833805c4471573b1445
- stable/c/bda27fc0b4eb3a425d9a18475c4cb94fbe862c60
- stable/c/d38135af04a3ad8a585c899d176efc8e97853115
- stable/c/a89434a6188d8430ea31120da96e3e4cefb58686
- stable/c/8147e304d7d32fd5c3e943babc296ce2873dc279
- stable/c/558e3275d8a3b101be18a7fe7d1634053e9d9b07
- stable/c/4f24a767e3d64a5f58c595b5c29b6063a201f1e3