CVE-2023-54121
kernel: btrfs: fix incorrect splitting in btrfs_drop_extent_map_range
Severity
LowRed Hat Product Security
CVSS 3.1
Review impact separately from score.
Published · December 24, 2025
Updated · August 5, 2026
Description
A logic error was found in the Linux kernel's btrfs filesystem in btrfs_drop_extent_map_range(). When splitting extent maps with skip_pinned enabled, incorrect length calculation causes an integer overflow. This results in invalid extent_map entries being inserted into the tree with incorrect start positions and potentially negative lengths, causing WARN_ON triggers and potential extent map corruption.
Statement
This flaw affects btrfs filesystems during balance/relocation operations when skip_pinned is active. The bug can cause WARN_ON assertions in production and may lead to extent map corruption. Systems running automatic btrfs balance operations are more likely to encounter this issue, though the race conditions required make it relatively uncommon.
CVSS score applicability
The CVSS score(s) listed for this vulnerability do not reflect the associated product's status, and are included for informational purposes to better understand the severity of this vulnerability.
Mitigation
No mitigation is specified in collected source.
CVSS / CWE
CVSS 3.1 · 5.5CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
CWE-190 · Integer Overflow or Wraparound