Skip to content
CVE PROGRAM SOURCE RECORD7.8 High

CVE-2026-68442

btrfs: don't propagate EXTENT_FLAG_LOGGING to split extent maps

Description

In the Linux kernel, the following vulnerability has been resolved: btrfs: don't propagate EXTENT_FLAG_LOGGING to split extent maps When btrfs_drop_extent_map_range() splits an extent map, the new split maps inherit the original map's flags through a local 'flags' variable. Commit f86f7a75e2fb ("btrfs: use the flags of an extent map to identify the compression type") changed the EXTENT_FLAG_LOGGING clearing to operate on em->flags instead of that local 'flags' copy, so a split of an extent map that is currently being logged wrongly inherits EXTENT_FLAG_LOGGING. The flag is then never cleared on the split, and when it is freed while still on the inode's modified_extents list (for example by the extent map shrinker) it trips the WARN_ON(!list_empty(&em->list)) in btrfs_free_extent_map() and leads to a use-after-free. Clear EXTENT_FLAG_LOGGING from the local 'flags' copy used for the splits and only clear EXTENT_FLAG_PINNED from em->flags, restoring the behaviour prior to f86f7a75e2fb.

Affected products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

Linux Linux

Default version status: unaffected

  • f86f7a75e2fb5fd7d31d00eab8a392f97ba42ce9 to < 2a9246a424f45f33a1b8367052611ebe874868adaffected
  • f86f7a75e2fb5fd7d31d00eab8a392f97ba42ce9 to < 9304713b70e7e1450e3a76e758836fe5391bfa95affected
  • f86f7a75e2fb5fd7d31d00eab8a392f97ba42ce9 to < 0e465c63f103a5ce6849614d6bda048d70eebec8affected
  • f86f7a75e2fb5fd7d31d00eab8a392f97ba42ce9 to < 5eff4d5b17fa1950e80bfd1ba43dc0699e61a644affected

Linux Linux

Default version status: affected

  • 6.8affected
  • 0 to < 6.8unaffected
  • 6.12.101 to ≤ 6.12.*unaffected
  • 6.18.42 to ≤ 6.18.*unaffected
  • 7.1.6 to ≤ 7.1.*unaffected
  • 7.2 to ≤ *unaffected

References