Vulnerability · Published May 1, 2026 · Assigned by Linux
CVE-2026-31702f2fs: fix use-after-free of sbi in f2fs_compress_write_end_io()
High 7.8
In plain English
A high-severity security flaw in Linux from Linux. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.1% (higher than 2% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
In the Linux kernel, the following vulnerability has been resolved: f2fs: fix use-after-free of sbi in f2fs_compress_write_end_io() In f2fs_compress_write_end_io(), dec_page_count(sbi, type) can bring the F2FS_WB_CP_DATA counter to zero, unblocking f2fs_wait_on_all_pages() in f2fs_put_super() on a concurrent unmount CPU. The unmount path then proceeds to call f2fs_destroy_page_array_cache(sbi), which destroys sbi->page_array_slab via kmem_cache_destroy(), and eventually kfree(sbi). Meanwhile, the bio completion callback is still executing: when it reaches page_array_free(sbi, ...), it dereferences sbi->page_array_slab — a destroyed slab cache — to call kmem_cache_free(), causing a use-after-free. This is the same class of bug as CVE-2026-23234 (which fixed the equivalent race in f2fs_write_end_io() in data.c), but in the compressed writeback completion path that was not covered by that fix. Fix this by moving dec_page_count() to after page_array_free(), so that all sbi accesses complete before the counter decrement that can unblock unmount. For non-last folios (where atomic_dec_return on cic->pending_pages is nonzero), dec_page_count is called immediately before returning — page_array_free is not reached on this path, so there is no post-decrement sbi access. For the last folio, page_array_free runs while the F2FS_WB_CP_DATA counter is still nonzero (this folio has not yet decremented it), keeping sbi alive, and dec_page_count runs as the final operation.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian:12 | linux | 6.1.176-1 | DEBIAN-CVE-2026-31702 |
| Debian:13 | linux | 6.12.85-1 | DEBIAN-CVE-2026-31702 |
| Debian:14 | linux | 7.0.3-1 | DEBIAN-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux | 6.8.0-136.136 | UBUNTU-CVE-2026-31702 |
| Ubuntu:25.10 | linux | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:26.04:LTS | linux | 7.0.0-27.27 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-allwinner-5.19 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-aws | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-aws | 6.8.0-1061.64 | UBUNTU-CVE-2026-31702 |
| Ubuntu:25.10 | linux-aws | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:26.04:LTS | linux-aws | 7.0.0-1008.8 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-aws-5.19 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-aws-6.14 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-aws-6.17 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-aws-6.2 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-aws-6.5 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-aws-6.8 | 6.8.0-1061.64~22.04.1 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-azure | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-azure | 6.8.0-1063.71 | UBUNTU-CVE-2026-31702 |
| Ubuntu:25.10 | linux-azure | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:26.04:LTS | linux-azure | 7.0.0-1010.10 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-azure-5.19 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-azure-6.11 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-azure-6.14 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-azure-6.17 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-azure-6.2 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-azure-6.5 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-azure-6.8 | 6.8.0-1063.71~22.04.1 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-azure-fde | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-azure-fde | 6.8.0-1062.69 | UBUNTU-CVE-2026-31702 |
| Ubuntu:25.10 | linux-azure-fde | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:26.04:LTS | linux-azure-fde | 7.0.0-1009.9 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-azure-fde-5.19 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-azure-fde-6.14 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-azure-fde-6.2 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-azure-fde-6.8 | 6.8.0-1062.69~22.04.1 | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-azure-nvidia | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-azure-nvidia-6.14 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-gcp | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-gcp | 6.8.0-1064.72 | UBUNTU-CVE-2026-31702 |
| Ubuntu:25.10 | linux-gcp | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:26.04:LTS | linux-gcp | 7.0.0-1007.7 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-gcp-5.19 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-gcp-6.11 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-gcp-6.14 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-gcp-6.17 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-gcp-6.2 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-gcp-6.5 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-gcp-6.8 | 6.8.0-1064.72~22.04.1 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-gke | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-gke | 6.8.0-1059.67 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-gkeop | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-gkeop | 6.8.0-1046.50 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-hwe-5.19 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-hwe-6.11 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-hwe-6.14 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-hwe-6.17 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-hwe-6.2 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-hwe-6.5 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-hwe-6.8 | 6.8.0-136.136~22.04.1 | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-hwe-7.0 | 7.0.0-28.28~24.04.1 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-ibm | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-ibm | 6.8.0-1061.62 | UBUNTU-CVE-2026-31702 |
| Ubuntu:26.04:LTS | linux-ibm | 7.0.0-1009.9 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-ibm-6.8 | 6.8.0-1061.62~22.04.1 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-intel-iot-realtime | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-intel-iotg | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-kvm | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-lowlatency | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-lowlatency | 6.8.0-136.136.2 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-5.19 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-lowlatency-hwe-6.11 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.2 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.5 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.8 | 6.8.0-136.136.2~22.04.1 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-nvidia | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-nvidia | 6.8.0-1059.62 | UBUNTU-CVE-2026-31702 |
| Ubuntu:26.04:LTS | linux-nvidia | 7.0.0-1013.13 | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-nvidia-6.11 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-nvidia-6.17 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-nvidia-6.2 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-nvidia-6.5 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-nvidia-6.8 | 6.8.0-1059.62~22.04.1 | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-nvidia-lowlatency | 6.8.0-1059.62.1 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-nvidia-tegra | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-nvidia-tegra | 6.8.0-1030.31 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-nvidia-tegra-igx | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-oem-5.17 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-oem-6.0 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-oem-6.1 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-oem-6.11 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-oem-6.14 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-oem-6.17 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-oem-6.5 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-oem-6.8 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-oracle | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-oracle | 6.8.0-1058.61 | UBUNTU-CVE-2026-31702 |
| Ubuntu:25.10 | linux-oracle | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:26.04:LTS | linux-oracle | 7.0.0-1007.7 | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-oracle-6.14 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-oracle-6.17 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-oracle-6.5 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-oracle-6.8 | 6.8.0-1058.61~22.04.1 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-raspi | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-raspi | 6.8.0-1061.65 | UBUNTU-CVE-2026-31702 |
| Ubuntu:25.10 | linux-raspi | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:26.04:LTS | linux-raspi | 7.0.0-1014.14 | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-raspi-realtime | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-realtime | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-realtime | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:25.10 | linux-realtime | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:26.04:LTS | linux-realtime | 7.0.0-27.27.1 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-riscv | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-riscv | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:25.10 | linux-riscv | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:26.04:LTS | linux-riscv | 7.0.0-27.27.1 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-riscv-5.19 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-riscv-6.14 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-riscv-6.17 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-riscv-6.5 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-riscv-6.8 | 6.8.0-136.136~22.04.3 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-starfive-5.19 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-starfive-6.2 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-starfive-6.5 | no fix listed | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-vmware | 6.8.0-1008.8 | UBUNTU-CVE-2026-31702 |
| Ubuntu:24.04:LTS | linux-xilinx | 6.8.0-1033.34 | UBUNTU-CVE-2026-31702 |
| Ubuntu:22.04:LTS | linux-xilinx-zynqmp | no fix listed | UBUNTU-CVE-2026-31702 |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux | 4c8ff7095bef64fc47e996a938f7d57f9e077da3 – before 57bc678f36ac03281e877c6b84877b43f964143f4c8ff7095bef64fc47e996a938f7d57f9e077da3 – before ef57cd3329b40c739b9a2e1a8a21ecc4171c62804c8ff7095bef64fc47e996a938f7d57f9e077da3 – before f5154cf3ce1c8193f0c1891d3769f62740cfe6fe4c8ff7095bef64fc47e996a938f7d57f9e077da3 – before c76cf339b87975ae5b2c06d2d774d5667d25a12a4c8ff7095bef64fc47e996a938f7d57f9e077da3 – before 2c97dcb6147c8f7f25c629b93be1e69617de5d4a4c8ff7095bef64fc47e996a938f7d57f9e077da3 – before 39d4ee19c1e7d753dd655aebee632271b171f43a |
| Linux | Linux | 5.6 |
References
- https://git.kernel.org/stable/c/57bc678f36ac03281e877c6b84877b43f964143f
- https://git.kernel.org/stable/c/ef57cd3329b40c739b9a2e1a8a21ecc4171c6280
- https://git.kernel.org/stable/c/f5154cf3ce1c8193f0c1891d3769f62740cfe6fe
- https://git.kernel.org/stable/c/c76cf339b87975ae5b2c06d2d774d5667d25a12a
- https://git.kernel.org/stable/c/2c97dcb6147c8f7f25c629b93be1e69617de5d4a
- https://git.kernel.org/stable/c/39d4ee19c1e7d753dd655aebee632271b171f43a