CVE-2026-43066

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.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux8016e29f4362e285f0f7e38fadc61a5b7bdfdfa2 < 0892f12cd49fde5d5db68137923db107f894f3a3affected
LinuxLinux8016e29f4362e285f0f7e38fadc61a5b7bdfdfa2 < 5a63033696e60b5d70816f1d119645ac5b0b0a03affected
LinuxLinux8016e29f4362e285f0f7e38fadc61a5b7bdfdfa2 < 9c90449a9ac2cd1ba540ad2561b8b70c1bfb0a25affected
LinuxLinux8016e29f4362e285f0f7e38fadc61a5b7bdfdfa2 < ca99cbcc316cdfd2040cc2b13d1426ccb3b3b50baffected
LinuxLinux8016e29f4362e285f0f7e38fadc61a5b7bdfdfa2 < 19782b4c793b49a6aa4abbb307ddff3610009d21affected
LinuxLinux8016e29f4362e285f0f7e38fadc61a5b7bdfdfa2 < f7817ad399d604e8639005d87d148b5ec626ad26affected
LinuxLinux8016e29f4362e285f0f7e38fadc61a5b7bdfdfa2 < c426231e3d51916e83b6d1ab7ed8a65e83bca5b4affected
LinuxLinux8016e29f4362e285f0f7e38fadc61a5b7bdfdfa2 < ec0a7500d8eace5b4f305fa0c594dd148f0e8d29affected
LinuxLinux5.10affected
LinuxLinux0 < 5.10unaffected
LinuxLinux5.10.253 <= 5.10.*unaffected
LinuxLinux5.15.203 <= 5.15.*unaffected
LinuxLinux6.1.168 <= 6.1.*unaffected
LinuxLinux6.6.131 <= 6.6.*unaffected
LinuxLinux6.12.80 <= 6.12.*unaffected
LinuxLinux6.18.21 <= 6.18.*unaffected
LinuxLinux6.19.11 <= 6.19.*unaffected
LinuxLinux7.0 <= *unaffected

Weaknesses

References