CVE-2026-43187
Severity CVSS v4.0:
Pending analysis
Type:
CWE-191
Integer Underflow (Wrap or Wraparound)
Publication date:
06/05/2026
Last modified:
11/05/2026
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
xfs: delete attr leaf freemap entries when empty<br />
<br />
Back in commit 2a2b5932db6758 ("xfs: fix attr leaf header freemap.size<br />
underflow"), Brian Foster observed that it&#39;s possible for a small<br />
freemap at the end of the end of the xattr entries array to experience<br />
a size underflow when subtracting the space consumed by an expansion of<br />
the entries array. There are only three freemap entries, which means<br />
that it is not a complete index of all free space in the leaf block.<br />
<br />
This code can leave behind a zero-length freemap entry with a nonzero<br />
base. Subsequent setxattr operations can increase the base up to the<br />
point that it overlaps with another freemap entry. This isn&#39;t in and of<br />
itself a problem because the code in _leaf_add that finds free space<br />
ignores any freemap entry with zero size.<br />
<br />
However, there&#39;s another bug in the freemap update code in _leaf_add,<br />
which is that it fails to update a freemap entry that begins midway<br />
through the xattr entry that was just appended to the array. That can<br />
result in the freemap containing two entries with the same base but<br />
different sizes (0 for the "pushed-up" entry, nonzero for the entry<br />
that&#39;s actually tracking free space). A subsequent _leaf_add can then<br />
allocate xattr namevalue entries on top of the entries array, leading to<br />
data loss. But fixing that is for later.<br />
<br />
For now, eliminate the possibility of confusion by zeroing out the base<br />
of any freemap entry that has zero size. Because the freemap is not<br />
intended to be a complete index of free space, a subsequent failure to<br />
find any free space for a new xattr will trigger block compaction, which<br />
regenerates the freemap.<br />
<br />
It looks like this bug has been in the codebase for quite a long time.
Impact
Base Score 3.x
8.80
Severity 3.x
HIGH
Vulnerable products and versions
| CPE | From | Up to |
|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 2.6.12.1 (including) | 5.10.252 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.11 (including) | 5.15.202 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.16 (including) | 6.1.165 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.2 (including) | 6.6.128 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.7 (including) | 6.12.75 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.13 (including) | 6.18.16 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.19 (including) | 6.19.6 (excluding) |
| cpe:2.3:o:linux:linux_kernel:2.6.12:-:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:2.6.12:rc2:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:2.6.12:rc3:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:2.6.12:rc4:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:2.6.12:rc5:*:*:*:*:*:* |
To consult the complete list of CPE names with products and versions, see this page
References to Advisories, Solutions, and Tools
- https://git.kernel.org/stable/c/479b05fc3ee272090f671b06a41f3da8aa78eece
- https://git.kernel.org/stable/c/6f13c1d2a6271c2e73226864a0e83de2770b6f34
- https://git.kernel.org/stable/c/a631899025d47ea1aa6464d76db5b4d3b6d196fd
- https://git.kernel.org/stable/c/aa9083d97e2157da3c6fb45ddb1a97af7f188f7f
- https://git.kernel.org/stable/c/e1b8c6452ee99a30e188a88f3f3f804fb1c6004a
- https://git.kernel.org/stable/c/f31a8334e1c54b126fcecf98645a49b6bc5ad399
- https://git.kernel.org/stable/c/f3c0d1fc1eadbb4adbee5ab7757d41d35f48325b
- https://git.kernel.org/stable/c/ffaf5c99d0f862db021fb1af8b813c1416b1beb2



