In the Linux kernel, the following vulnerability has been resolved:
xfs: fix freemap adjustments when adding xattrs to leaf blocks
xfs/592 and xfs/794 both trip this assertion in the leaf block freemap adjustment code after ~20 minutes of running on my test VMs:
ASSERT(ichdr->firstused >= ichdr->count * sizeof(xfs_attr_leaf_entry_t) + xfs_attr3_leaf_hdr_size(leaf));
Upon enabling quite a lot more debugging code, I narrowed this down to fsstress trying to set a local extended attribute with namelen=3 and valuelen=71. This results in an entry size of 80 bytes.
At the start of xfs_attr3_leaf_add_work, the freemap looks like this:
i 0 base 448 size 0 rhs 448 count 46 i 1 base 388 size 132 rhs 448 count 46 i 2 base 2120 size 4 rhs 448 count 46 firstused = 520
where "rhs" is the first byte past the end of the leaf entry array. This is inconsistent -- the entries array ends at byte 448, but freemap[1] says there's free space starting at byte 388!
By the end of the function, the freemap is in worse shape:
i 0 base 456 size 0 rhs 456 count 47 i 1 base 388 size 52 rhs 456 count 47 i 2 base 2120 size 4 rhs 456 count 47 firstused = 440
Important note: 388 is not aligned with the entries array element size of 8 bytes.
Based on the incorrect freemap, the name area starts at byte 440, which is below the end of the entries array! That's why the assertion triggers and the filesystem shuts down.
How did we end up here? First, recall from the previous patch that the freemap array in an xattr leaf block is not intended to be a comprehensive map of all free space in the leaf block. In other words, it's perfectly legal to have a leaf block with:
* 376 bytes in use by the entries array * freemap[0] has [base = 376, size = 8] * freemap[1] has [base = 388, size = 1500] * the space between 376 and 388 is free, but the freemap stopped tracking that some time ago
If we add one xattr, the entries array grows to 384 bytes, and freemap[0] becomes [base = 384, size = 0]. So far, so good. But if we add a second xattr, the entries array grows to 392 bytes, and freemap[0] gets pushed up to [base = 392, size = 0]. This is bad, because freemap[1] hasn't been updated, and now the entries array and the free space claim the same space.
The fix here is to adjust all freemap entries so that none of them collide with the entries array. Note that this fix relies on commit 2a2b5932db6758 ("xfs: fix attr leaf header freemap.size underflow") and the previous patch that resets zero length freemap entries to have base = 0.
CVSS Details
- CVSS 3.1 Base Score: 8.8
- CVSS 3.1 Vector: (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade kernel-modules-extraUpgrade kernel-modules-coreUpgrade kernel-64k-develUpgrade kernel-debugUpgrade kernel-debug-develUpgrade kernel-debug-modulesUpgrade kernel-develUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-uki-virtUpgrade kernel-modulesUpgrade rtlaUpgrade kernel-rt-debug-develUpgrade kernel-rt-develUpgrade kernel-64k-modules-coreUpgrade kernel-headersUpgrade kernel-zfcpdump-develUpgrade kernel-rt-64k-develUpgrade kernel-coreUpgrade kernel-tools-libsUpgrade kernel-rt-debug-modules-extraUpgrade kernel-rt-64k-coreUpgrade perfUpgrade kernel-rt-debug-modulesUpgrade kernel-docUpgrade kernel-64k-debug-develUpgrade kernel-debug-uki-virtUpgrade kernel-rt-64k-debug-modules-coreUpgrade kernel-debug-modules-coreUpgrade kernel-rt-64k-debug-modules-extraUpgrade kernelUpgrade kernel-rt-64k-debugUpgrade python3-perfUpgrade kernel-64k-debug-modulesUpgrade kernel-rt-coreUpgrade kernel-rt-debugUpgrade kernel-debug-coreUpgrade kernel-zfcpdumpUpgrade kernel-64k-modules-extraUpgrade kernel-cross-headersUpgrade kernel-abi-stablelistsUpgrade kernel-rt-debug-coreUpgrade libperfUpgrade kernel-rt-debug-modules-coreUpgrade kernel-rt-modules-extraUpgrade kernel-rt-64k-debug-modulesUpgrade kernel-rt-modulesUpgrade kernel-devel-matchedUpgrade kernel-rt-64kUpgrade kernel-zfcpdump-coreUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-64kUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-64k-modulesUpgrade kernel-rt-64k-modulesUpgrade kernel-tools-libs-develUpgrade bpftoolUpgrade kernel-rtUpgrade kernel-64k-debug-modules-coreUpgrade kernel-rt-64k-debug-develUpgrade rvUpgrade kernel-64k-debug-modules-extraUpgrade kernel-64k-coreUpgrade kernel-uki-virt-addonsUpgrade kernel-64k-debug-coreUpgrade kernel-64k-devel-matchedUpgrade kernel-debug-devel-matchedUpgrade kernel-rt-64k-debug-coreUpgrade kernel-rt-modules-coreUpgrade kernel-64k-debug-devel-matchedUpgrade kernel-64k-debugUpgrade kernel-debug-modules-extraUpgrade kernel-rt-64k-modules-coreUpgrade kernel-zfcpdump-modulesUpgrade kernel-rt-64k-modules-extraUpgrade kernel-tools | May 28, 2026 | May 28, 2026 |
| Amazon Linux Ami 2 | — | Upgrade kernel-toolsUpgrade kernel-tools-debuginfoUpgrade kernel-tools-develUpgrade kernel-debuginfoUpgrade kernel-develUpgrade perfUpgrade kernel-livepatch-5.10.252-250.992Upgrade bpftoolUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-debuginfo-common-x86_64Upgrade python-perfUpgrade kernelUpgrade perf-debuginfoUpgrade python-perf-debuginfoUpgrade kernel-livepatch-5.15.202-141.223Upgrade bpftool-debuginfoUpgrade kernel-headers | May 20, 2026 | May 20, 2026 |
| Amazon_linux_2023 | — | Upgrade bpftool6.18-debuginfoUpgrade kernel6.18-modules-extraUpgrade kernel6.18-headersUpgrade kernel6.18-libbpfUpgrade kernel6.18-toolsUpgrade perf6.18-debuginfoUpgrade kernel6.18-develUpgrade kernel6.18-debuginfoUpgrade python3-perf6.18-debuginfoUpgrade kernel6.18-libbpf-develUpgrade kernel6.18-tools-develUpgrade kernel6.18-debuginfo-common-x86_64Upgrade kernel6.18-tools-debuginfoUpgrade kernel6.18-libbpf-staticUpgrade kernel6.18-modules-extra-commonUpgrade kernel6.18-libbpf-debuginfoUpgrade python3-perf6.18Upgrade perf6.18Upgrade bpftool6.18Upgrade kernel-livepatch-6.18.16-18.222Upgrade kernel6.18Upgrade kernel6.18-debuginfo-common-aarch64 | May 19, 2026 | May 6, 2026 |
| Debian | — | Upgrade linux | May 7, 2026 | May 7, 2026 |
| Redhat_linux | — | Upgrade kernelNo solution existsUpgrade kernel-rt | Jun 3, 2026 | May 6, 2026 |
| Rocky_linux | — | Upgrade kernel-rt-coreUpgrade kernel-rt-modules-extraUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-rt-develUpgrade rvUpgrade kernel-zfcpdump-modulesUpgrade kernel-rt-debug-coreUpgrade kernel-debug-modulesUpgrade kernel-rt-debugUpgrade kernel-tools-debuginfoUpgrade kernel-debug-modules-coreUpgrade kernel-zfcpdump-coreUpgrade bpftoolUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-rt-debuginfo-common-x86_64Upgrade kernel-modules-extra-matchedUpgrade libperf-debuginfoUpgrade kernel-rt-debug-debuginfoUpgrade kernel-rt-kvmUpgrade kernel-debug-debuginfoUpgrade kernel-uki-virt-addonsUpgrade python3-perf-debuginfoUpgrade kernelUpgrade kernel-debug-modules-extraUpgrade kernel-tools-libsUpgrade kernel-tools-libs-develUpgrade kernel-zfcpdump-debuginfoUpgrade kernel-rt-debug-modulesUpgrade kernel-debug-uki-virtUpgrade kernel-rt-modules-coreUpgrade kernel-debuginfoUpgrade kernel-zfcpdumpUpgrade kernel-zfcpdump-modules-extraUpgrade rtlaUpgrade python3-perfUpgrade kernel-zfcpdump-develUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-rt-modulesUpgrade libperfUpgrade kernel-debug-develUpgrade kernel-rt-debug-modules-extraUpgrade kernel-rt-debug-modules-coreUpgrade kernel-develUpgrade kernel-toolsUpgrade kernel-modulesUpgrade kernel-rt-debug-develUpgrade perfUpgrade kernel-debuginfo-common-s390xUpgrade kernel-coreUpgrade kernel-rt-debuginfoUpgrade kernel-modules-coreUpgrade perf-debuginfoUpgrade kernel-uki-virtUpgrade kernel-debug-coreUpgrade kernel-rt-debug-kvmUpgrade kernel-debug-devel-matchedUpgrade kernel-devel-matchedUpgrade kernel-debugUpgrade kernel-rtUpgrade kernel-modules-extra | Jun 1, 2026 | May 31, 2026 |
| Ubuntu | — | Upgrade linux-image-oracleUpgrade linux-image-5.15.0-184-lowlatency-64kUpgrade linux-image-fipsUpgrade linux-image-generic-64k-5.15Upgrade linux-image-6.8.0-1058-nvidiaUpgrade linux-image-5.15.0-1117-azureUpgrade linux-image-gke-64kUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-ibm-6.8Upgrade linux-image-kvmUpgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-5.15.0-1107-nvidia-lowlatencyUpgrade linux-image-raspi-nolpaeUpgrade linux-image-gcp-fips-5.15Upgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-nvidia-tegra-rt-6.8Upgrade linux-image-lowlatency-6.8Upgrade linux-image-ibm-5.15Upgrade linux-image-aws-64k-5.15Upgrade linux-image-5.15.0-186-genericUpgrade linux-image-6.8.0-1057-oracle-64kUpgrade linux-image-6.8.0-1062-azure-fipsUpgrade linux-image-aws-fips-5.15Upgrade linux-image-nvidia-64k-6.8Upgrade linux-image-6.8.0-134-lowlatencyUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-nvidia-6.8Upgrade linux-image-5.15.0-1107-intel-iotgUpgrade linux-image-azure-fde-5.15Upgrade linux-image-aws-64k-6.8Upgrade linux-image-azure-fdeUpgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-generic-64k-6.8Upgrade linux-image-6.8.0-1058-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-134-fipsUpgrade linux-image-awsUpgrade linux-image-nvidia-tegra-igxUpgrade linux-image-generic-lpaeUpgrade linux-image-intel-iot-realtime-5.15Upgrade linux-image-gcp-5.15Upgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-virtual-5.15Upgrade linux-image-azure-fipsUpgrade linux-image-5.15.0-1095-gkeopUpgrade linux-image-gcp-6.8Upgrade linux-image-gkeop-5.15Upgrade linux-image-5.15.0-1112-aws-fipsUpgrade linux-image-gcp-64k-6.8Upgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-6.8.0-136-generic-64kUpgrade linux-image-5.15.0-1112-gcpUpgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-5.15.0-186-generic-64kUpgrade linux-image-5.15.0-1053-nvidia-tegra-igxUpgrade linux-image-xilinx-zynqmp-5.15Upgrade linux-image-aws-fipsUpgrade linux-image-6.8.0-1058-gkeUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-virtualUpgrade linux-image-6.8.0-1062-azure-fdeUpgrade linux-image-nvidia-tegra-rtUpgrade linux-image-aws-lts-22.04Upgrade linux-image-6.8.0-1063-gcpUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-nvidia-tegra-igx-rt-5.15Upgrade linux-image-6.8.0-1060-aws-fipsUpgrade linux-image-gcp-lts-24.04Upgrade linux-image-5.15.0-1104-kvmUpgrade linux-image-5.15.0-184-lowlatencyUpgrade linux-image-realtimeUpgrade linux-image-6.8.0-134-genericUpgrade linux-image-aws-5.15Upgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-lowlatency-64k-5.15Upgrade linux-image-5.15.0-1104-intel-iot-realtimeUpgrade linux-image-aws-fips-6.8Upgrade linux-image-6.8.0-1058-nvidia-lowlatencyUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-6.8.0-1060-raspiUpgrade linux-image-5.15.0-1106-ibmUpgrade linux-image-generic-5.15Upgrade linux-image-6.8.0-1058-nvidia-64kUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-6.8.0-1032-xilinxUpgrade linux-image-6.8.0-1060-awsUpgrade linux-image-5.15.0-1112-gcp-fipsUpgrade linux-image-6.8.0-1063-gcp-fipsUpgrade linux-image-azure-cvmUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-5.15.0-1112-awsUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-nvidia-lowlatency-5.15Upgrade linux-image-5.15.0-1111-realtimeUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-6.8.0-2049-raspi-realtimeUpgrade linux-image-6.8.0-1045-gkeopUpgrade linux-image-6.8.1-1055-realtimeUpgrade linux-image-oracle-64k-6.8Upgrade linux-image-virtual-hwe-20.04Upgrade linux-image-oem-20.04Upgrade linux-image-oem-22.04aUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-intel-iot-realtimeUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-5.15.0-1108-gkeUpgrade linux-image-ibm-classicUpgrade linux-image-gkeop-6.8Upgrade linux-image-5.15.0-1107-nvidiaUpgrade linux-image-6.8.0-1063-azureUpgrade linux-image-gcpUpgrade linux-image-6.8.0-134-lowlatency-64kUpgrade linux-image-5.15.0-1106-raspiUpgrade linux-image-raspi-realtime-6.8Upgrade linux-image-realtime-hwe-22.04Upgrade linux-image-nvidiaUpgrade linux-image-raspiUpgrade linux-image-azure-lts-24.04Upgrade linux-image-oem-22.04dUpgrade linux-image-lowlatency-5.15Upgrade linux-image-aws-6.8Upgrade linux-image-6.8.0-1058-gke-64kUpgrade linux-image-generic-64kUpgrade linux-image-gcp-64kUpgrade linux-image-aws-64k-lts-22.04Upgrade linux-image-6.8.0-1063-gcp-64kUpgrade linux-image-6.8.0-1060-aws-64kUpgrade linux-image-6.8.0-1029-nvidia-tegra-rtUpgrade linux-image-5.15.0-186-generic-lpaeUpgrade linux-image-5.15.0-1117-azure-fdeUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-oem-20.04bUpgrade linux-image-nvidia-tegra-6.8Upgrade linux-image-kvm-5.15Upgrade linux-image-intelUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-5.15.0-1064-nvidia-tegraUpgrade linux-image-xilinx-6.8Upgrade linux-image-gcp-fipsUpgrade linux-image-azure-fips-6.8Upgrade linux-image-azureUpgrade linux-image-realtime-6.8.1Upgrade linux-image-raspi-5.15Upgrade linux-image-genericUpgrade linux-image-6.8.0-1060-ibmUpgrade linux-image-xilinxUpgrade linux-image-oracle-64kUpgrade linux-image-nvidia-tegra-rt-5.15Upgrade linux-image-nvidia-64kUpgrade linux-image-5.15.0-1109-oracleUpgrade linux-image-5.15.0-1053-nvidia-tegra-igx-rtUpgrade linux-image-lowlatency-64kUpgrade linux-image-5.15.0-1117-azure-fipsUpgrade linux-image-realtime-5.15Upgrade linux-image-gke-6.8Upgrade linux-image-5.15.0-1112-aws-64kUpgrade linux-image-ibmUpgrade linux-image-gkeopUpgrade linux-image-fips-5.15Upgrade linux-image-azure-fde-6.8Upgrade linux-image-aws-64kUpgrade linux-image-6.8.0-136-genericUpgrade linux-image-6.8.0-1057-oracleUpgrade linux-image-6.8.0-1029-nvidia-tegraUpgrade linux-image-5.15.0-1064-nvidia-tegra-rtUpgrade linux-image-raspi-6.8Upgrade linux-image-oracle-5.15Upgrade linux-image-oem-22.04cUpgrade linux-image-oem-22.04Upgrade linux-image-nvidia-tegraUpgrade linux-image-intel-iotg-5.15Upgrade linux-image-gke-5.15Upgrade linux-image-gcp-fips-6.8Upgrade linux-image-generic-hwe-20.04Upgrade linux-image-oem-20.04cUpgrade linux-image-fips-6.8Upgrade linux-image-laptop-23.10Upgrade linux-image-azure-fips-5.15Upgrade linux-image-nvidia-tegra-5.15Upgrade linux-image-gkeUpgrade linux-image-oracle-lts-24.04Upgrade linux-image-aws-lts-24.04Upgrade linux-image-5.15.0-1075-xilinx-zynqmpUpgrade linux-image-oracle-6.8Upgrade linux-image-5.15.0-186-fipsUpgrade linux-image-oem-22.04bUpgrade linux-image-generic-lpae-5.15Upgrade linux-image-oem-20.04dUpgrade linux-image-azure-5.15Upgrade linux-image-raspi-realtimeUpgrade linux-image-generic-6.8Upgrade linux-image-nvidia-tegra-igx-rtUpgrade linux-image-virtual-6.8Upgrade linux-image-gke-64k-6.8Upgrade linux-image-6.8.0-134-generic-64kUpgrade linux-image-azure-6.8Upgrade linux-image-azure-lts-22.04Upgrade linux-image-nvidia-5.15Upgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-nvidia-tegra-igx-5.15Upgrade linux-image-lowlatencyUpgrade linux-image-intel-iotg | Jul 2, 2026 | Jul 1, 2026 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jun 12, 2026 | May 6, 2026 |
Prioritize with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub