ext4: fix iloc.bh leak in ext4_fc_replay_inode() error paths
- 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: ext4: fix iloc.bh leak in ext4_fc_replay_inode() error paths During code review, Joseph found that ext4_fc_replay_inode() calls ext4_get_fc_inode_loc() to get the inode location, which holds a reference to iloc.bh that must be released via brelse(). However, several error paths jump to the 'out' label without releasing iloc.bh: • ext4_handle_dirty_metadata() failure • sync_dirty_buffer() failure • ext4_mark_inode_used() failure • ext4_iget() failure Fix this by introducing an 'out_brelse' label placed just before the existing 'out' label to ensure iloc.bh is always released. Additionally, make ext4_fc_replay_inode() propagate errors properly instead of always returning 0.
Timeline
- CVE published
- Record last updated
Affected versions
- Linux Linux
Version range not reported
- Linux Linux
5.10
References 8
git.kernel.org
- stable/c/0892f12cd49fde5d5db68137923db107f894f3a3
- stable/c/5a63033696e60b5d70816f1d119645ac5b0b0a03
- stable/c/9c90449a9ac2cd1ba540ad2561b8b70c1bfb0a25
- stable/c/ca99cbcc316cdfd2040cc2b13d1426ccb3b3b50b
- stable/c/19782b4c793b49a6aa4abbb307ddff3610009d21
- stable/c/f7817ad399d604e8639005d87d148b5ec626ad26
- stable/c/c426231e3d51916e83b6d1ab7ed8a65e83bca5b4
- stable/c/ec0a7500d8eace5b4f305fa0c594dd148f0e8d29