In the Linux kernel, the following vulnerability has been resolved:
fs/nfs/read: fix double-unlock bug in nfs_return_empty_folio()
Sometimes, when a file was read while it was being truncated by another NFS client, the kernel could deadlock because folio_unlock() was called twice, and the second call would XOR back the `PG_locked` flag.
Most of the time (depending on the timing of the truncation), nobody notices the problem because folio_unlock() gets called three times, which flips `PG_locked` back off:
1. vfs_read, nfs_read_folio, ... nfs_read_add_folio, nfs_return_empty_folio 2. vfs_read, nfs_read_folio, ... netfs_read_collection, netfs_unlock_abandoned_read_pages 3. vfs_read, ... nfs_do_read_folio, nfs_read_add_folio, nfs_return_empty_folio
The problem is that nfs_read_add_folio() is not supposed to unlock the folio if fscache is enabled, and a nfs_netfs_folio_unlock() check is missing in nfs_return_empty_folio().
Rarely this leads to a warning in netfs_read_collection():
------------[ cut here ]------------ R=0000031c: folio 10 is not locked WARNING: CPU: 0 PID: 29 at fs/netfs/read_collect.c:133 netfs_read_collection+0x7c0/0xf00 [...] Workqueue: events_unbound netfs_read_collection_worker RIP: 0010:netfs_read_collection+0x7c0/0xf00 [...] Call Trace: <TASK> netfs_read_collection_worker+0x67/0x80 process_one_work+0x12e/0x2c0 worker_thread+0x295/0x3a0
Most of the time, however, processes just get stuck forever in folio_wait_bit_common(), waiting for `PG_locked` to disappear, which never happens because nobody is really holding the folio lock.
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon_linux_2023 | — | Upgrade kernel-libbpf-develUpgrade perf6.12Upgrade kernel-toolsUpgrade kernel-libbpf-staticUpgrade kernel-modules-extra-commonUpgrade python3-perf6.12-debuginfoUpgrade bpftoolUpgrade kernel-tools-develUpgrade kernel-livepatch-6.12.35-55.103Upgrade kernel6.12-debuginfoUpgrade kernel-develUpgrade kernel6.12-debuginfo-common-x86_64Upgrade kernel6.12-modules-extraUpgrade kernel6.12Upgrade kernel-libbpfUpgrade perf6.12-debuginfoUpgrade bpftool-debuginfoUpgrade python3-perf6.12Upgrade kernel6.12-debuginfo-common-aarch64Upgrade kernel-libbpf-debuginfoUpgrade kernel-tools-debuginfoUpgrade kernel-headers | Sep 9, 2025 | Jul 10, 2025 |
| Debian | — | Upgrade linux | Jul 23, 2026 | Jul 23, 2026 |
| Redhat_linux | — | No solution exists | Jul 11, 2025 | Jul 10, 2025 |
| Suse | — | Upgrade kernel-kvmsmall-develUpgrade kernel-obs-qaUpgrade kernel-rt_debugUpgrade kernel-rt_debug-vdsoUpgrade kernel-macrosUpgrade ocfs2-kmp-64kbUpgrade reiserfs-kmp-rtUpgrade kernel-zfcpdumpUpgrade dtb-rockchipUpgrade kernel-obs-buildUpgrade kernel-rt-vdsoUpgrade kernel-azure-develUpgrade dtb-socionextUpgrade dtb-apmUpgrade kernel-devel-azureUpgrade dtb-amlogicUpgrade reiserfs-kmp-64kbUpgrade kernel-docs-htmlUpgrade kernel-source-rtUpgrade dtb-appleUpgrade kernel-default-base-rebuildUpgrade dlm-kmp-azureUpgrade dlm-kmp-defaultUpgrade ocfs2-kmp-rtUpgrade kernel-azure-vdsoUpgrade gfs2-kmp-rtUpgrade kernel-64kbUpgrade kernel-docsUpgrade dtb-freescaleUpgrade kernel-kvmsmallUpgrade kselftests-kmp-rtUpgrade kernel-rt-livepatch-develUpgrade cluster-md-kmp-defaultUpgrade dtb-marvellUpgrade kernel-default-extraUpgrade kernel-syms-rtUpgrade kselftests-kmp-defaultUpgrade dtb-amazonUpgrade kernel-default-livepatchUpgrade kernel-rtUpgrade dtb-qcomUpgrade gfs2-kmp-64kbUpgrade dtb-broadcomUpgrade kernel-default-develUpgrade kernel-kvmsmall-vdsoUpgrade kernel-rt-extraUpgrade cluster-md-kmp-azureUpgrade kernel-rt-optionalUpgrade kernel-azure-extraUpgrade kselftests-kmp-azureUpgrade kernel-syms-azureUpgrade kernel-develUpgrade ocfs2-kmp-defaultUpgrade kernel-symsUpgrade kernel-rt_debug-develUpgrade kernel-rt-develUpgrade kernel-source-vanillaUpgrade dtb-allwinnerUpgrade dtb-caviumUpgrade dtb-mediatekUpgrade kernel-default-baseUpgrade kernel-azure-optionalUpgrade dtb-armUpgrade dtb-amdUpgrade gfs2-kmp-defaultUpgrade kernel-default-vdsoUpgrade kernel-64kb-optionalUpgrade kernel-64kb-develUpgrade dtb-renesasUpgrade dtb-exynosUpgrade dlm-kmp-rtUpgrade kselftests-kmp-64kbUpgrade ocfs2-kmp-azureUpgrade reiserfs-kmp-azureUpgrade dtb-lgUpgrade dtb-hisiliconUpgrade dtb-alteraUpgrade dlm-kmp-64kbUpgrade cluster-md-kmp-64kbUpgrade dtb-xilinxUpgrade cluster-md-kmp-rtUpgrade kernel-rt-livepatchUpgrade gfs2-kmp-azureUpgrade kernel-default-livepatch-develUpgrade kernel-devel-rtUpgrade kernel-debugUpgrade reiserfs-kmp-defaultUpgrade kernel-debug-vdsoUpgrade kernel-debug-develUpgrade dtb-nvidiaUpgrade kernel-defaultUpgrade kernel-azureUpgrade kernel-source-azureUpgrade kernel-sourceUpgrade kernel-default-optionalUpgrade kernel-64kb-extraUpgrade dtb-sprd | Dec 5, 2025 | Aug 18, 2025 |
| Ubuntu | — | Upgrade linux-image-oracle-6.14Upgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-oem-24.04Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-gcp-64k-6.8Upgrade linux-image-aws-6.14Upgrade linux-image-gcp-64kUpgrade linux-image-6.14.0-1015-awsUpgrade linux-image-aws-64k-6.14Upgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-6.8.0-2037-raspi-realtimeUpgrade linux-image-nvidia-64kUpgrade linux-image-6.8.0-1046-nvidiaUpgrade linux-image-nvidia-6.8Upgrade linux-image-6.14.0-1007-azure-nvidiaUpgrade linux-image-6.14.0-34-generic-64kUpgrade linux-image-kvmUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-realtime-6.14Upgrade linux-image-6.14.0-1018-gcp-64kUpgrade linux-image-azure-6.8Upgrade linux-image-xilinx-zynqmpUpgrade linux-image-azure-6.14Upgrade linux-image-raspiUpgrade linux-image-xilinx-6.8Upgrade linux-image-oracleUpgrade linux-image-virtual-6.8Upgrade linux-image-raspi-6.8Upgrade linux-image-lowlatency-6.8Upgrade linux-image-realtimeUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-intel-iotgUpgrade linux-image-aws-fips-6.8Upgrade linux-image-6.8.0-1030-gkeopUpgrade linux-image-6.14.0-1015-oracleUpgrade linux-image-aws-lts-24.04Upgrade linux-image-gke-64k-6.8Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-awsUpgrade linux-image-gcp-64k-6.14Upgrade linux-image-virtual-hwe-22.04Upgrade linux-image-6.8.0-1044-ibmUpgrade linux-image-6.14.0-34-genericUpgrade linux-image-6.8.0-1046-aws-fipsUpgrade linux-image-6.8.0-1047-raspiUpgrade linux-image-gkeUpgrade linux-image-oracle-6.8Upgrade linux-image-gcp-6.14Upgrade linux-image-oem-24.04cUpgrade linux-image-generic-6.14Upgrade linux-image-aws-64kUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-6.8.0-1047-gcp-64kUpgrade linux-image-gke-6.8Upgrade linux-image-generic-hwe-24.04Upgrade linux-image-intel-iot-realtimeUpgrade linux-image-oem-22.04dUpgrade linux-image-6.14.0-1014-oemUpgrade linux-image-6.14.0-1014-azureUpgrade linux-image-6.8.0-1047-gcpUpgrade linux-image-realtime-6.8.1Upgrade linux-image-6.14.0-1016-raspiUpgrade linux-image-generic-64k-6.14Upgrade linux-image-virtual-6.14Upgrade linux-image-6.8.0-100-lowlatencyUpgrade linux-image-aws-fipsUpgrade linux-image-gcp-6.8Upgrade linux-image-gcp-fipsUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-lowlatencyUpgrade linux-image-fipsUpgrade linux-image-6.8.0-1046-nvidia-lowlatencyUpgrade linux-image-6.14.0-1018-gcpUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-6.14.0-1015-aws-64kUpgrade linux-image-gcpUpgrade linux-image-6.8.0-100-generic-64kUpgrade linux-image-oem-22.04bUpgrade linux-image-realtime-hwe-24.04Upgrade linux-image-6.8.0-1046-aws-64kUpgrade linux-image-ibm-6.8Upgrade linux-image-generic-64k-6.8Upgrade linux-image-azure-fipsUpgrade linux-image-6.8.0-1046-nvidia-lowlatency-64kUpgrade linux-image-gke-64kUpgrade linux-image-gkeop-6.8Upgrade linux-image-oem-22.04cUpgrade linux-image-azure-nvidiaUpgrade linux-image-6.8.0-100-genericUpgrade linux-image-oem-22.04aUpgrade linux-image-6.8.0-100-lowlatency-64kUpgrade linux-image-oem-24.04aUpgrade linux-image-6.8.0-1043-gke-64kUpgrade linux-image-6.8.0-1023-xilinxUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-raspi-realtimeUpgrade linux-image-genericUpgrade linux-image-azure-nvidia-6.14Upgrade linux-image-realtime-hwe-22.04Upgrade linux-image-oracle-64k-6.8Upgrade linux-image-oem-22.04Upgrade linux-image-azureUpgrade linux-image-6.8.0-1046-azure-fipsUpgrade linux-image-6.8.0-1046-awsUpgrade linux-image-6.8.0-100-fipsUpgrade linux-image-6.14.0-1015-oracle-64kUpgrade linux-image-6.14.0-1014-realtimeUpgrade linux-image-oem-24.04bUpgrade linux-image-generic-lpaeUpgrade linux-image-azure-lts-24.04Upgrade linux-image-virtual-hwe-24.04Upgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-fips-6.8Upgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-ibmUpgrade linux-image-generic-6.8Upgrade linux-image-aws-64k-6.8Upgrade linux-image-6.8.0-1046-nvidia-64kUpgrade linux-image-gcp-fips-6.8Upgrade linux-image-oracle-64kUpgrade linux-image-azure-fips-6.8Upgrade linux-image-oracle-64k-6.14Upgrade linux-image-gkeopUpgrade linux-image-oem-6.14Upgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-6.8.0-1047-gcp-fipsUpgrade linux-image-6.8.0-1046-azureUpgrade linux-image-6.8.0-1043-oracleUpgrade linux-image-ibm-classicUpgrade linux-image-lowlatency-64kUpgrade linux-image-raspi-6.14Upgrade linux-image-oracle-lts-24.04Upgrade linux-image-6.8.0-1043-gkeUpgrade linux-image-nvidiaUpgrade linux-image-6.8.1-1041-realtimeUpgrade linux-image-6.8.0-1051-azureUpgrade linux-image-6.8.0-1043-oracle-64kUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-xilinxUpgrade linux-image-virtualUpgrade linux-image-raspi-realtime-6.8Upgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-generic-64kUpgrade linux-image-aws-6.8 | Jul 14, 2025 | Jul 10, 2025 |
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