Skip to content
OpenAdvisories
High · 7.8 CVE-2025-21722 EUVD-2025-5233GHSA-6g66-96c8-x7cw

nilfs2: do not force clear folio if buffer is referenced

Published Feb 27, 2025 · Updated Oct 21, 2026 · Assigned by Linux

Vendor: Linux Product: Linux Package: linux Package: linux Package: linux-allwinner-5.19 Package: linux-aws Package: linux-aws-5.0 Package: linux-aws-5.11 Package: linux-aws-5.13 Package: linux-aws-5.15 Package: linux-aws-5.19 Package: linux-aws-5.3 Package: linux-aws-5.4 Package: linux-aws-5.8 Package: linux-aws-6.2 Package: linux-aws-6.5 Package: linux-aws-6.8 Package: linux-aws-fips Package: linux-aws-hwe Package: linux-azure Package: linux-azure-4.15 Package: linux-azure-5.11 Package: linux-azure-5.13 Package: linux-azure-5.15 Package: linux-azure-5.19 Package: linux-azure-5.3 Package: linux-azure-5.4 Package: linux-azure-5.8 Package: linux-azure-6.11 Package: linux-azure-6.2 Package: linux-azure-6.5 Package: linux-azure-6.8 Package: linux-azure-edge Package: linux-azure-fde Package: linux-azure-fde-5.19 Package: linux-azure-fde-6.2 Package: linux-azure-fips Package: linux-azure-nvidia Package: linux-bluefield Package: linux-fips Package: linux-gcp Package: linux-gcp-4.15 Package: linux-gcp-5.11 Package: linux-gcp-5.13 Package: linux-gcp-5.15 Package: linux-gcp-5.19 Package: linux-gcp-5.3 Package: linux-gcp-5.4 Package: linux-gcp-5.8 Package: linux-gcp-6.11 Package: linux-gcp-6.2 Package: linux-gcp-6.5 Package: linux-gcp-6.8 Package: linux-gcp-fips Package: linux-gke Package: linux-gke-4.15 Package: linux-gke-5.15 Package: linux-gke-5.4 Package: linux-gkeop Package: linux-gkeop-5.15 Package: linux-gkeop-5.4 Package: linux-hwe Package: linux-hwe-5.11 Package: linux-hwe-5.13 Package: linux-hwe-5.15 Package: linux-hwe-5.19 Package: linux-hwe-5.4 Package: linux-hwe-5.8 Package: linux-hwe-6.11 Package: linux-hwe-6.2 Package: linux-hwe-6.5 Package: linux-hwe-6.8 Package: linux-hwe-edge Package: linux-ibm Package: linux-ibm-5.15 Package: linux-ibm-5.4 Package: linux-ibm-6.8 Package: linux-intel-5.13 Package: linux-intel-iot-realtime Package: linux-intel-iotg Package: linux-intel-iotg-5.15 Package: linux-iot Package: linux-kvm Package: linux-lowlatency Package: linux-lowlatency-hwe-5.15 Package: linux-lowlatency-hwe-5.19 Package: linux-lowlatency-hwe-6.11 Package: linux-lowlatency-hwe-6.2 Package: linux-lowlatency-hwe-6.5 Package: linux-lowlatency-hwe-6.8 Package: linux-lts-xenial Package: linux-nvidia Package: linux-nvidia-6.11 Package: linux-nvidia-6.2 Package: linux-nvidia-6.5 Package: linux-nvidia-6.8 Package: linux-nvidia-lowlatency Package: linux-nvidia-tegra Package: linux-nvidia-tegra-5.15 Package: linux-nvidia-tegra-igx Package: linux-oem Package: linux-oem-5.10 Package: linux-oem-5.13 Package: linux-oem-5.14 Package: linux-oem-5.17 Package: linux-oem-5.6 Package: linux-oem-6.0 Package: linux-oem-6.1 Package: linux-oem-6.11 Package: linux-oem-6.5 Package: linux-oem-6.8 Package: linux-oracle Package: linux-oracle-5.0 Package: linux-oracle-5.11 Package: linux-oracle-5.13 Package: linux-oracle-5.15 Package: linux-oracle-5.3 Package: linux-oracle-5.4 Package: linux-oracle-5.8 Package: linux-oracle-6.5 Package: linux-oracle-6.8 Package: linux-raspi Package: linux-raspi-5.4 Package: linux-raspi-realtime Package: linux-raspi2 Package: linux-realtime Package: linux-realtime-6.8 Package: linux-riscv Package: linux-riscv-5.11 Package: linux-riscv-5.15 Package: linux-riscv-5.19 Package: linux-riscv-5.8 Package: linux-riscv-6.5 Package: linux-riscv-6.8 Package: linux-starfive-5.19 Package: linux-starfive-6.2 Package: linux-starfive-6.5 Package: linux-vmware Package: linux-xilinx Package: linux-xilinx-zynqmp Platform: Linux Ecosystem: Debian Ecosystem: Ubuntu

Description

In the Linux kernel, the following vulnerability has been resolved:

nilfs2: do not force clear folio if buffer is referenced

Patch series "nilfs2: protect busy buffer heads from being force-cleared".

This series fixes the buffer head state inconsistency issues reported by
syzbot that occurs when the filesystem is corrupted and falls back to
read-only, and the associated buffer head use-after-free issue.

This patch (of 2):

Syzbot has reported that after nilfs2 detects filesystem corruption and
falls back to read-only, inconsistencies in the buffer state may occur.

One of the inconsistencies is that when nilfs2 calls mark_buffer_dirty()
to set a data or metadata buffer as dirty, but it detects that the buffer
is not in the uptodate state:

WARNING: CPU: 0 PID: 6049 at fs/buffer.c:1177 mark_buffer_dirty+0x2e5/0x520
fs/buffer.c:1177
...
Call Trace:
<TASK>
nilfs_palloc_commit_alloc_entry+0x4b/0x160 fs/nilfs2/alloc.c:598
nilfs_ifile_create_inode+0x1dd/0x3a0 fs/nilfs2/ifile.c:73
nilfs_new_inode+0x254/0x830 fs/nilfs2/inode.c:344
nilfs_mkdir+0x10d/0x340 fs/nilfs2/namei.c:218
vfs_mkdir+0x2f9/0x4f0 fs/namei.c:4257
do_mkdirat+0x264/0x3a0 fs/namei.c:4280
__do_sys_mkdirat fs/namei.c:4295 [inline]
__se_sys_mkdirat fs/namei.c:4293 [inline]
__x64_sys_mkdirat+0x87/0xa0 fs/namei.c:4293
do_syscall_x64 arch/x86/entry/common.c:52 [inline]
do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83
entry_SYSCALL_64_after_hwframe+0x77/0x7f

The other is when nilfs_btree_propagate(), which propagates the dirty
state to the ancestor nodes of a b-tree that point to a dirty buffer,
detects that the origin buffer is not dirty, even though it should be:

WARNING: CPU: 0 PID: 5245 at fs/nilfs2/btree.c:2089
nilfs_btree_propagate+0xc79/0xdf0 fs/nilfs2/btree.c:2089
...
Call Trace:
<TASK>
nilfs_bmap_propagate+0x75/0x120 fs/nilfs2/bmap.c:345
nilfs_collect_file_data+0x4d/0xd0 fs/nilfs2/segment.c:587
nilfs_segctor_apply_buffers+0x184/0x340 fs/nilfs2/segment.c:1006
nilfs_segctor_scan_file+0x28c/0xa50 fs/nilfs2/segment.c:1045
nilfs_segctor_collect_blocks fs/nilfs2/segment.c:1216 [inline]
nilfs_segctor_collect fs/nilfs2/segment.c:1540 [inline]
nilfs_segctor_do_construct+0x1c28/0x6b90 fs/nilfs2/segment.c:2115
nilfs_segctor_construct+0x181/0x6b0 fs/nilfs2/segment.c:2479
nilfs_segctor_thread_construct fs/nilfs2/segment.c:2587 [inline]
nilfs_segctor_thread+0x69e/0xe80 fs/nilfs2/segment.c:2701
kthread+0x2f0/0x390 kernel/kthread.c:389
ret_from_fork+0x4b/0x80 arch/x86/kernel/process.c:147
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
</TASK>

Both of these issues are caused by the callbacks that handle the
page/folio write requests, forcibly clear various states, including the
working state of the buffers they hold, at unexpected times when they
detect read-only fallback.

Fix these issues by checking if the buffer is referenced before clearing
the page/folio state, and skipping the clear if it is.

Affected products

VendorProductAffectedFixed
Linux Linux 3.10 5.4.291

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 linux 6.12.13-1 —
Debian 13 linux 6.12.13-1 —
Debian 12 linux 6.1.129-1 —
Debian 11 linux 5.10.237-1 DLA-4178-1
Debian 11 linux-6.1 6.1.129-1~deb11u1 DLA-4102-1
ReleasePackageFixed inAdvisory
Ubuntu Nvidia-BlueField 22.04 LTS linux-bluefield 5.15.0-1066.68 —
Ubuntu 24.04 LTS linux 6.8.0-64.67 USN-7651-1
Ubuntu 24.04 LTS linux-aws 6.8.0-1032.34 USN-7651-1
Ubuntu 24.04 LTS linux-azure 6.8.0-1034.39 USN-7737-1
Ubuntu 24.04 LTS linux-azure-nvidia 6.8.0-1022.23 USN-7737-1
Ubuntu 24.04 LTS linux-gcp 6.8.0-1033.35 USN-7651-4
Ubuntu 24.04 LTS linux-gke 6.8.0-1028.32 USN-7651-3
Ubuntu 24.04 LTS linux-gkeop 6.8.0-1015.17 USN-7651-3
Ubuntu 24.04 LTS linux-ibm 6.8.0-1029.29 USN-7651-2
Ubuntu 24.04 LTS linux-lowlatency 6.8.0-64.67.1 USN-7651-2
Ubuntu 24.04 LTS linux-nvidia 6.8.0-1031.34 USN-7651-3
Ubuntu 24.04 LTS linux-nvidia-lowlatency 6.8.0-1031.34.1 USN-7651-3
Ubuntu 24.04 LTS linux-nvidia-tegra 6.8.0-1008.8 —
Ubuntu 24.04 LTS linux-oem-6.8 6.8.0-1031.31 USN-7651-1
Ubuntu 24.04 LTS linux-oracle 6.8.0-1029.30 USN-7651-3
Ubuntu 24.04 LTS linux-raspi 6.8.0-1031.35 USN-7651-6
Ubuntu 24.04 LTS linux-riscv +8 No fix yet —
Ubuntu 24.04 LTS linux-xilinx 6.8.0-1017.18 —
Ubuntu 22.04 LTS linux +1 5.15.0-140.150 USN-7510-1
Ubuntu 22.04 LTS linux-aws 5.15.0-1084.91 USN-7510-7
Ubuntu 22.04 LTS linux-aws-6.8 6.8.0-1032.34~22.04.1 USN-7651-3
Ubuntu 22.04 LTS linux-azure 5.15.0-1089.98 USN-7510-3
Ubuntu 22.04 LTS linux-azure-6.8 6.8.0-1034.39~22.04.1 USN-7737-1
Ubuntu 22.04 LTS linux-azure-fde 5.15.0-1089.98.1 —
Ubuntu 22.04 LTS linux-gcp 5.15.0-1083.92 USN-7511-1
Ubuntu 22.04 LTS linux-gcp-6.8 6.8.0-1033.35~22.04.1 USN-7651-4
Ubuntu 22.04 LTS linux-gke +1 5.15.0-1081.87 USN-7511-3, USN-7510-1
Ubuntu 22.04 LTS linux-gkeop 5.15.0-1066.74 USN-7510-1
Ubuntu 22.04 LTS linux-hwe-6.8 +1 6.8.0-64.67~22.04.1 USN-7653-1
Ubuntu 22.04 LTS linux-ibm 5.15.0-1076.79 USN-7510-1
Ubuntu 22.04 LTS linux-ibm-6.8 6.8.0-1029.29~22.04.1 USN-7651-2
Ubuntu 22.04 LTS linux-intel-iotg 5.15.0-1079.85 USN-7510-1
Ubuntu 22.04 LTS linux-kvm 5.15.0-1080.85 USN-7510-1
Ubuntu 22.04 LTS linux-lowlatency-hwe-6.8 6.8.0-64.67.1~22.04.1 USN-7651-2
Ubuntu 22.04 LTS linux-nvidia 5.15.0-1078.79 USN-7510-1
Ubuntu 22.04 LTS linux-nvidia-6.8 6.8.0-1031.34~22.04.1 USN-7651-3
Ubuntu 22.04 LTS linux-nvidia-tegra 5.15.0-1037.37 USN-7510-3
Ubuntu 22.04 LTS linux-nvidia-tegra-igx 5.15.0-1026.26 USN-7510-7
Ubuntu 22.04 LTS linux-oracle-6.8 6.8.0-1029.30~22.04.1 USN-7651-3
Ubuntu 22.04 LTS linux-raspi 5.15.0-1078.81 USN-7510-7
Ubuntu 22.04 LTS linux-riscv +32 No fix yet —
Ubuntu 22.04 LTS linux-xilinx-zynqmp 5.15.0-1050.54 USN-7602-1
Ubuntu 20.04 LTS linux 5.4.0-216.236 USN-7516-1
Ubuntu 20.04 LTS linux-aws 5.4.0-1146.156 USN-7516-9
Ubuntu 20.04 LTS linux-aws-5.15 5.15.0-1084.91~20.04.1 USN-7510-8
Ubuntu 20.04 LTS linux-azure 5.4.0-1151.158 USN-7516-3
Ubuntu 20.04 LTS linux-azure-5.15 5.15.0-1089.98~20.04.1 USN-7510-3
Ubuntu 20.04 LTS linux-bluefield 5.4.0-1105.112 USN-7517-3
Ubuntu 20.04 LTS linux-gcp 5.4.0-1149.158 USN-7516-1
Ubuntu 20.04 LTS linux-gcp-5.15 5.15.0-1083.92~20.04.1 USN-7512-1
Ubuntu 20.04 LTS linux-gke +28 No fix yet —
Ubuntu 20.04 LTS linux-ibm 5.4.0-1092.97 USN-7516-6
Ubuntu 20.04 LTS linux-ibm-5.15 5.15.0-1076.79~20.04.1 USN-7510-1
Ubuntu 20.04 LTS linux-intel-iotg-5.15 5.15.0-1079.85~20.04.1 USN-7510-7
Ubuntu 20.04 LTS linux-kvm 5.4.0-1133.142 USN-7516-3
Ubuntu 20.04 LTS linux-lowlatency-hwe-5.15 5.15.0-140.150~20.04.1 USN-7510-1
Ubuntu 20.04 LTS linux-oracle 5.4.0-1144.154 USN-7516-1
Ubuntu 20.04 LTS linux-oracle-5.15 5.15.0-1081.87~20.04.1 USN-7510-1
Ubuntu 20.04 LTS linux-raspi 5.4.0-1129.142 USN-7539-1
Ubuntu 20.04 LTS linux-riscv-5.15 5.15.0-1079.83~20.04.1 —
Ubuntu 20.04 LTS linux-xilinx-zynqmp 5.4.0-1064.68 USN-7517-1
Ubuntu 18.04 LTS linux-gcp +14 No fix yet —
Show 16 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu 16.04 LTS linux-hwe-edge No fix yet —
Ubuntu Pro Realtime 24.04 LTS linux-raspi-realtime 6.8.0-2026.27 USN-7651-5
Ubuntu Pro Realtime 24.04 LTS linux-realtime 6.8.1-1025.26 USN-7652-1
Ubuntu Pro Realtime 22.04 LTS linux-intel-iot-realtime 5.15.0-1077.79 USN-7510-4
Ubuntu Pro Realtime 22.04 LTS linux-realtime 5.15.0-1084.93 USN-7510-4
Ubuntu Pro Realtime 22.04 LTS linux-realtime-6.8 6.8.1-1025.26~22.04.1 —
Ubuntu Pro FIPS 20.04 LTS linux-fips +3 No fix yet —
Ubuntu Pro FIPS 18.04 LTS linux-fips +3 No fix yet —
Ubuntu Pro FIPS 16.04 LTS linux-fips No fix yet —
Ubuntu Pro FIPS-updates 24.04 LTS linux-fips 6.8.0-78.78+fips1 —
Ubuntu Pro FIPS-updates 22.04 LTS linux-aws-fips 5.15.0-1084.91+fips1 USN-7510-6
Ubuntu Pro FIPS-updates 22.04 LTS linux-azure-fips 5.15.0-1089.98+fips1 USN-7510-5
Ubuntu Pro FIPS-updates 22.04 LTS linux-fips 5.15.0-140.150+fips1 USN-7510-2
Ubuntu Pro FIPS-updates 22.04 LTS linux-gcp-fips 5.15.0-1083.92+fips1 USN-7511-2
Ubuntu Pro FIPS-updates 20.04 LTS linux-aws-fips 5.4.0-1146.156+fips1 USN-7516-8
Ubuntu Pro FIPS-updates 20.04 LTS linux-azure-fips 5.4.0-1151.158+fips1 USN-7518-1
Ubuntu Pro FIPS-updates 20.04 LTS linux-fips 5.4.0-1120.130 USN-7516-8
Ubuntu Pro FIPS-updates 20.04 LTS linux-gcp-fips 5.4.0-1149.158+fips1 USN-7516-2
Ubuntu Pro FIPS-updates 18.04 LTS linux-aws-fips 4.15.0-2125.131 USN-7907-2
Ubuntu Pro FIPS-updates 18.04 LTS linux-azure-fips 4.15.0-2104.110 USN-7937-1
Ubuntu Pro FIPS-updates 18.04 LTS linux-fips 4.15.0-1142.154 USN-7907-2
Ubuntu Pro FIPS-updates 18.04 LTS linux-gcp-fips 4.15.0-2088.94 USN-7907-4
Ubuntu Pro FIPS-updates 16.04 LTS linux-fips 4.4.0-1120.127 USN-7930-2
Ubuntu Pro FIPS-preview 22.04 LTS linux-fips +3 No fix yet —
Ubuntu Pro 20.04 LTS linux-hwe-5.15 5.15.0-142.152~20.04.1 USN-7593-1
Ubuntu Pro 20.04 LTS linux-iot 5.4.0-1051.54 USN-7640-1
Ubuntu Pro 20.04 LTS linux-nvidia-tegra-5.15 5.15.0-1039.39~20.04.1 —
Ubuntu Pro 18.04 LTS linux 4.15.0-245.257 USN-7907-1
Ubuntu Pro 18.04 LTS linux-aws 4.15.0-1187.200 USN-7907-1
Ubuntu Pro 18.04 LTS linux-aws-5.4 5.4.0-1146.156~18.04.1 USN-7516-7
Ubuntu Pro 18.04 LTS linux-azure-4.15 4.15.0-1195.210 USN-7907-5
Ubuntu Pro 18.04 LTS linux-azure-5.4 5.4.0-1151.158~18.04.1 USN-7516-1
Ubuntu Pro 18.04 LTS linux-gcp-4.15 4.15.0-1180.197 USN-7907-3
Ubuntu Pro 18.04 LTS linux-gcp-5.4 5.4.0-1149.158~18.04.1 USN-7516-1
Ubuntu Pro 18.04 LTS linux-hwe-5.4 5.4.0-216.236~18.04.1 USN-7516-5
Ubuntu Pro 18.04 LTS linux-ibm-5.4 5.4.0-1092.97~18.04.1 USN-7517-2
Ubuntu Pro 18.04 LTS linux-kvm 4.15.0-1169.174 USN-7907-1
Ubuntu Pro 18.04 LTS linux-oracle 4.15.0-1149.160 USN-7907-1
Ubuntu Pro 18.04 LTS linux-oracle-5.4 5.4.0-1144.154~18.04.1 USN-7516-4
Ubuntu Pro 18.04 LTS linux-raspi-5.4 5.4.0-1129.142~18.04.1 USN-7540-1
Ubuntu Pro 16.04 LTS linux 4.4.0-276.310 USN-7930-1
Ubuntu Pro 16.04 LTS linux-aws 4.4.0-1188.203 USN-7930-1
Ubuntu Pro 16.04 LTS linux-aws-hwe 4.15.0-1187.200~16.04.1 USN-7907-1
Ubuntu Pro 16.04 LTS linux-azure 4.15.0-1195.210~16.04.1 USN-7907-5
Ubuntu Pro 16.04 LTS linux-gcp 4.15.0-1180.197~16.04.1 USN-7907-3
Ubuntu Pro 16.04 LTS linux-hwe 4.15.0-245.257~16.04.1 USN-7907-3
Ubuntu Pro 16.04 LTS linux-kvm 4.4.0-1151.162 USN-7930-1
Ubuntu Pro 16.04 LTS linux-oracle 4.15.0-1149.160~16.04.1 USN-7907-5
Ubuntu Pro 14.04 LTS linux No fix yet —
Ubuntu Pro 14.04 LTS linux-aws 4.4.0-1150.156 USN-7930-1
Ubuntu Pro 14.04 LTS linux-azure 4.15.0-1195.210~14.04.1 USN-7907-5
Ubuntu Pro 14.04 LTS linux-lts-xenial 4.4.0-276.310~14.04.1 USN-7930-1

Amazon Linux

ReleasePackageFixed inAdvisory
Amazon Linux 2 kernel-livepatch-4.14.355-277.647 1.0-0.amzn2 ALAS2-2025-2865
Amazon Linux 2 perf +8 4.14.355-277.647.amzn2 ALAS2-2025-2865

Oracle Linux

ReleasePackageFixed inAdvisory
Oracle Linux 9 kernel-uek +34 6.12.0-101.33.4.3.el10uek ELSA-2025-20530, ELSA-2025-20480

Advisories 50

References