CVE-2026-53017

Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
24/06/2026
Last modified:
15/07/2026

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> f2fs: fix data loss caused by incorrect use of nat_entry flag<br /> <br /> Data loss can occur when fsync is performed on a newly created file<br /> (before any checkpoint has been written) concurrently with a checkpoint<br /> operation. The scenario is as follows:<br /> <br /> create &amp; write &amp; fsync &amp;#39;file A&amp;#39; write checkpoint<br /> - f2fs_do_sync_file // inline inode<br /> - f2fs_write_inode // inode folio is dirty<br /> - f2fs_write_checkpoint<br /> - f2fs_flush_merged_writes<br /> - f2fs_sync_node_pages<br /> - f2fs_flush_nat_entries<br /> - f2fs_fsync_node_pages // no dirty node<br /> - f2fs_need_inode_block_update // return false<br /> SPO and lost &amp;#39;file A&amp;#39;<br /> <br /> f2fs_flush_nat_entries() sets the IS_CHECKPOINTED and HAS_LAST_FSYNC<br /> flags for the nat_entry, but this does not mean that the checkpoint has<br /> actually completed successfully. However, f2fs_need_inode_block_update()<br /> checks these flags and incorrectly assumes that the checkpoint has<br /> finished.<br /> <br /> The root cause is that the semantics of IS_CHECKPOINTED and<br /> HAS_LAST_FSYNC are only guaranteed after the checkpoint write fully<br /> completes.<br /> <br /> This patch modifies f2fs_need_inode_block_update() to acquire the<br /> sbi-&gt;node_write lock before reading the nat_entry flags, ensuring that<br /> once IS_CHECKPOINTED and HAS_LAST_FSYNC are observed to be set, the<br /> checkpoint operation has already completed.

Vulnerable products and versions

CPE From Up to
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 3.8 (including) 7.0.10 (excluding)