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-64k-debug-modules-extraUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-zfcpdump-coreUpgrade kernel-rt-64k-debug-develUpgrade kernel-64k-debug-coreUpgrade kernel-64k-modules-extraUpgrade kernel-64k-modulesUpgrade kernel-64k-debugUpgrade kernel-rtUpgrade kernel-rt-64k-debug-modulesUpgrade kernel-rt-64kUpgrade kernel-debug-modules-extraUpgrade kernel-rt-modulesUpgrade kernel-devel-matchedUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-abi-stablelistsUpgrade bpftoolUpgrade kernel-tools-libs-develUpgrade kernel-cross-headersUpgrade kernel-rt-64k-modulesUpgrade kernel-64k-devel-matchedUpgrade kernel-zfcpdump-modulesUpgrade rvUpgrade kernel-64k-coreUpgrade kernel-64kUpgrade kernel-uki-virt-addonsUpgrade kernel-64k-debug-devel-matchedUpgrade kernel-rt-64k-modules-extraUpgrade kernel-rt-modules-extraUpgrade kernel-rt-modules-coreUpgrade kernel-64k-debug-modules-coreUpgrade kernel-rt-64k-modules-coreUpgrade kernel-rt-64k-debug-coreUpgrade libperfUpgrade kernel-rt-debug-modules-coreUpgrade kernel-debug-devel-matchedUpgrade kernel-rt-debug-coreUpgrade kernel-toolsUpgrade perfUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-zfcpdump-develUpgrade kernel-debug-coreUpgrade kernel-rt-64k-debug-modules-extraUpgrade kernel-modules-extraUpgrade kernel-debug-develUpgrade kernel-rt-64k-coreUpgrade kernel-tools-libsUpgrade kernel-docUpgrade kernel-coreUpgrade kernel-64k-debug-modulesUpgrade kernel-rt-64k-debug-modules-coreUpgrade kernel-rt-debug-modulesUpgrade kernel-debugUpgrade kernel-64k-develUpgrade kernel-64k-modules-coreUpgrade kernel-modules-coreUpgrade kernel-rt-coreUpgrade kernel-headersUpgrade kernel-uki-virtUpgrade kernel-debug-modulesUpgrade kernel-rt-debug-modules-extraUpgrade kernel-rt-debugUpgrade rtlaUpgrade python3-perfUpgrade kernel-rt-64k-develUpgrade kernel-rt-develUpgrade kernelUpgrade kernel-develUpgrade kernel-debug-uki-virtUpgrade kernel-rt-64k-debugUpgrade kernel-rt-debug-develUpgrade kernel-debug-modules-coreUpgrade kernel-zfcpdumpUpgrade kernel-64k-debug-develUpgrade kernel-modules | May 28, 2026 | May 28, 2026 |
| Amazon Linux Ami 2 | — | Upgrade perfUpgrade kernel-livepatch-5.10.252-250.992Upgrade kernel-debuginfo-common-aarch64Upgrade kernel-debuginfoUpgrade bpftoolUpgrade kernel-toolsUpgrade kernel-tools-debuginfoUpgrade kernel-develUpgrade kernel-tools-develUpgrade kernelUpgrade python-perfUpgrade perf-debuginfoUpgrade python-perf-debuginfoUpgrade kernel-livepatch-5.15.202-141.223Upgrade kernel-debuginfo-common-x86_64Upgrade bpftool-debuginfoUpgrade kernel-headers | May 20, 2026 | May 20, 2026 |
| Amazon_linux_2023 | — | Upgrade kernel6.18-debuginfoUpgrade bpftool6.18-debuginfoUpgrade python3-perf6.18-debuginfoUpgrade kernel6.18-tools-debuginfoUpgrade kernel6.18-modules-extraUpgrade kernel6.18-libbpf-develUpgrade kernel6.18-toolsUpgrade kernel6.18-headersUpgrade kernel6.18-libbpfUpgrade kernel6.18-debuginfo-common-x86_64Upgrade kernel6.18-tools-develUpgrade perf6.18-debuginfoUpgrade kernel6.18-libbpf-staticUpgrade kernel6.18-develUpgrade kernel6.18-modules-extra-commonUpgrade kernel6.18-debuginfo-common-aarch64Upgrade kernel6.18-libbpf-debuginfoUpgrade bpftool6.18Upgrade kernel-livepatch-6.18.16-18.222Upgrade kernel6.18Upgrade python3-perf6.18Upgrade perf6.18 | 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-modulesUpgrade kernel-modules-extraUpgrade kernel-devel-matchedUpgrade kernel-rtUpgrade libperfUpgrade kernel-debugUpgrade kernel-uki-virtUpgrade kernel-debug-develUpgrade kernel-zfcpdumpUpgrade kernel-zfcpdump-develUpgrade kernel-rt-debuginfoUpgrade perf-debuginfoUpgrade kernel-toolsUpgrade kernel-coreUpgrade kernel-rt-debug-modules-coreUpgrade rtlaUpgrade kernel-develUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-rt-debug-develUpgrade kernel-rt-modulesUpgrade perfUpgrade kernel-modules-coreUpgrade kernel-rt-debug-modules-extraUpgrade kernel-debug-devel-matchedUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-debug-coreUpgrade kernel-debuginfo-common-s390xUpgrade python3-perfUpgrade kernel-rt-debug-kvmUpgrade kernel-debuginfoUpgrade kernel-rt-coreUpgrade kernel-rt-modules-extraUpgrade kernel-debug-debuginfoUpgrade kernel-rt-develUpgrade kernel-debug-modulesUpgrade rvUpgrade kernel-debuginfo-common-x86_64Upgrade bpftoolUpgrade kernel-modules-extra-matchedUpgrade kernel-rt-kvmUpgrade kernel-zfcpdump-coreUpgrade kernel-zfcpdump-debuginfoUpgrade kernel-tools-libs-develUpgrade kernel-rt-debug-modulesUpgrade kernel-tools-libsUpgrade kernel-zfcpdump-devel-matchedUpgrade python3-perf-debuginfoUpgrade kernel-uki-virt-addonsUpgrade kernel-rt-modules-coreUpgrade kernel-debug-uki-virtUpgrade kernel-debug-modules-extraUpgrade kernelUpgrade kernel-debug-modules-coreUpgrade libperf-debuginfoUpgrade kernel-rt-debuginfo-common-x86_64Upgrade kernel-rt-debug-debuginfoUpgrade kernel-rt-debug-coreUpgrade kernel-tools-debuginfoUpgrade kernel-zfcpdump-modulesUpgrade kernel-rt-debug | Jun 1, 2026 | May 31, 2026 |
| Ubuntu | — | Upgrade linux-image-gcp-64k-6.8Upgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-azure-fipsUpgrade linux-image-nvidia-tegra-igxUpgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-virtualUpgrade linux-image-virtual-5.15Upgrade linux-image-5.15.0-1107-nvidia-lowlatencyUpgrade linux-image-azure-fdeUpgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-6.8.0-134-genericUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-realtimeUpgrade linux-image-5.15.0-1053-nvidia-tegra-igxUpgrade linux-image-5.15.0-1112-aws-fipsUpgrade linux-image-6.8.0-1062-azure-fdeUpgrade linux-image-5.15.0-1117-azureUpgrade linux-image-5.15.0-184-lowlatencyUpgrade linux-image-5.15.0-1104-kvmUpgrade linux-image-6.8.0-1063-gcpUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-136-generic-64kUpgrade linux-image-aws-5.15Upgrade linux-image-gke-64kUpgrade linux-image-generic-lpaeUpgrade linux-image-gkeop-5.15Upgrade linux-image-intel-iot-realtime-5.15Upgrade linux-image-oracleUpgrade linux-image-6.8.0-134-lowlatencyUpgrade linux-image-aws-fips-5.15Upgrade linux-image-6.8.0-1058-gkeUpgrade linux-image-gcp-lts-24.04Upgrade linux-image-xilinx-zynqmp-5.15Upgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-awsUpgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-gcp-5.15Upgrade linux-image-aws-fips-6.8Upgrade linux-image-5.15.0-1104-intel-iot-realtimeUpgrade linux-image-5.15.0-1112-awsUpgrade linux-image-5.15.0-1095-gkeopUpgrade linux-image-5.15.0-186-generic-64kUpgrade linux-image-5.15.0-186-genericUpgrade linux-image-oracle-lts-22.04Upgrade linux-image-6.8.0-1058-nvidia-lowlatency-64kUpgrade linux-image-aws-lts-22.04Upgrade linux-image-6.8.0-1062-azure-fipsUpgrade linux-image-gcp-6.8Upgrade linux-image-6.8.0-1057-oracle-64kUpgrade linux-image-ibm-5.15Upgrade linux-image-aws-64k-5.15Upgrade linux-image-nvidia-64k-6.8Upgrade linux-image-5.15.0-1107-intel-iotgUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-raspi-nolpaeUpgrade linux-image-nvidia-6.8Upgrade linux-image-gcp-lts-22.04Upgrade linux-image-6.8.0-134-fipsUpgrade linux-image-azure-fde-5.15Upgrade linux-image-azure-cvmUpgrade linux-image-generic-5.15Upgrade linux-image-generic-64k-5.15Upgrade linux-image-gcp-fips-5.15Upgrade linux-image-aws-fipsUpgrade linux-image-5.15.0-1112-gcpUpgrade linux-image-6.8.0-1060-raspiUpgrade linux-image-aws-64k-6.8Upgrade linux-image-6.8.0-1058-nvidiaUpgrade linux-image-6.8.0-1058-nvidia-lowlatencyUpgrade linux-image-6.8.0-1060-aws-fipsUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-lowlatency-64k-5.15Upgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-nvidia-tegra-igx-rt-5.15Upgrade linux-image-generic-64k-6.8Upgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-5.15.0-184-lowlatency-64kUpgrade linux-image-6.8.0-1058-nvidia-64kUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-nvidia-lowlatency-5.15Upgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-5.15.0-1111-realtimeUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-ibm-6.8Upgrade linux-image-kvmUpgrade linux-image-6.8.0-1032-xilinxUpgrade linux-image-lowlatency-6.8Upgrade linux-image-nvidia-tegra-rtUpgrade linux-image-nvidia-tegra-rt-6.8Upgrade linux-image-5.15.0-1112-gcp-fipsUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-fipsUpgrade linux-image-6.8.0-1060-awsUpgrade linux-image-5.15.0-1106-ibmUpgrade linux-image-6.8.0-1063-gcp-fipsUpgrade linux-image-genericUpgrade linux-image-raspi-5.15Upgrade linux-image-5.15.0-1117-azure-fipsUpgrade linux-image-nvidia-5.15Upgrade linux-image-azure-fips-5.15Upgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-azure-5.15Upgrade linux-image-oem-22.04bUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-generic-lpae-5.15Upgrade linux-image-intel-iotgUpgrade linux-image-realtime-5.15Upgrade linux-image-raspiUpgrade linux-image-6.8.0-134-lowlatency-64kUpgrade linux-image-aws-6.8Upgrade linux-image-oem-22.04dUpgrade linux-image-nvidiaUpgrade linux-image-lowlatency-5.15Upgrade linux-image-gcpUpgrade linux-image-azure-lts-24.04Upgrade linux-image-6.8.0-1063-azureUpgrade linux-image-raspi-realtime-6.8Upgrade linux-image-5.15.0-1106-raspiUpgrade linux-image-realtime-hwe-22.04Upgrade linux-image-5.15.0-1107-nvidiaUpgrade linux-image-azure-lts-22.04Upgrade linux-image-xilinx-zynqmpUpgrade linux-image-nvidia-tegra-5.15Upgrade linux-image-aws-lts-24.04Upgrade linux-image-gkeUpgrade linux-image-ibm-classicUpgrade linux-image-gkeop-6.8Upgrade linux-image-6.8.0-2049-raspi-realtimeUpgrade linux-image-5.15.0-1108-gkeUpgrade linux-image-5.15.0-1075-xilinx-zynqmpUpgrade linux-image-raspi-realtimeUpgrade linux-image-oracle-lts-24.04Upgrade linux-image-oracle-6.8Upgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-virtual-hwe-20.04Upgrade linux-image-laptop-23.10Upgrade linux-image-lowlatencyUpgrade linux-image-oracle-64k-6.8Upgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-gcp-fips-6.8Upgrade linux-image-fips-6.8Upgrade linux-image-5.15.0-186-fipsUpgrade linux-image-oem-22.04aUpgrade linux-image-oem-20.04dUpgrade linux-image-oem-20.04cUpgrade linux-image-nvidia-tegra-igx-5.15Upgrade linux-image-oracle-64kUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-lowlatency-64kUpgrade linux-image-intel-iot-realtimeUpgrade linux-image-gke-64k-6.8Upgrade linux-image-generic-6.8Upgrade linux-image-azure-6.8Upgrade linux-image-6.8.1-1055-realtimeUpgrade linux-image-6.8.0-134-generic-64kUpgrade linux-image-5.15.0-1109-oracleUpgrade linux-image-5.15.0-1053-nvidia-tegra-igx-rtUpgrade linux-image-virtual-6.8Upgrade linux-image-nvidia-tegra-rt-5.15Upgrade linux-image-nvidia-tegra-igx-rtUpgrade linux-image-nvidia-64kUpgrade linux-image-oem-20.04Upgrade linux-image-oem-22.04cUpgrade linux-image-oem-22.04Upgrade linux-image-nvidia-tegraUpgrade linux-image-ibmUpgrade linux-image-gkeopUpgrade linux-image-gke-6.8Upgrade linux-image-6.8.0-1029-nvidia-tegraUpgrade linux-image-5.15.0-1112-aws-64kUpgrade linux-image-gke-5.15Upgrade 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-5.15.0-1064-nvidia-tegra-rtUpgrade linux-image-raspi-6.8Upgrade linux-image-oracle-5.15Upgrade linux-image-intel-iotg-5.15Upgrade linux-image-azureUpgrade linux-image-6.8.0-1060-ibmUpgrade linux-image-5.15.0-1064-nvidia-tegraUpgrade linux-image-6.8.0-1045-gkeopUpgrade linux-image-6.8.0-1029-nvidia-tegra-rtUpgrade 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-1058-gke-64kUpgrade 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-generic-64kUpgrade linux-image-5.15.0-186-generic-lpaeUpgrade linux-image-gcp-fipsUpgrade linux-image-azure-fips-6.8Upgrade linux-image-xilinx-6.8Upgrade linux-image-xilinxUpgrade linux-image-realtime-6.8.1 | 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 |
Prioritise 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