CVE-2026-53368

Source
https://cve.org/CVERecord?id=CVE-2026-53368
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2026-53368.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2026-53368
Downstream
BELL (1)
CGA (5)
DEBIAN (1)
ROOT (4)
UBUNTU (1)
Published
2026-07-19T09:10:29Z
Modified
2026-10-22T10:30:35Z
Severity
  • 7.1 (High) CVSS_V3 - CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H CVSS Calculator
Summary
f2fs: fix fsck inconsistency caused by incorrect nat_entry flag usage
Details

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

f2fs: fix fsck inconsistency caused by incorrect nat_entry flag usage

f2fs_need_dentry_mark() reads nat_entry flags without mutual exclusion with the checkpoint path, which can result in an incorrect inode block marking state. The scenario is as follows:

create & write & fsync 'file A' write checkpoint

  • f2fs_do_sync_file // inline inode
  • f2fs_write_inode // inode folio is dirty - f2fs_write_checkpoint - f2fs_flush_merged_writes - f2fs_sync_node_pages
  • f2fs_fsync_node_pages // no dirty node
  • f2fs_need_inode_block_update // return true
  • f2fs_fsync_node_pages // inode dirtied
  • f2fs_need_dentry_mark //return true - f2fs_flush_nat_entries - f2fs_write_checkpoint end
  • __write_node_folio // inode with DENT_BIT_SHIFT set SPO, "fsck --dry-run" find inode has already checkpointed but still with DENT_BIT_SHIFT set

The state observed by f2fs_need_dentry_mark() can differ from the state observed in __write_node_folio() after acquiring sbi->node_write. The root cause is that the semantics of IS_CHECKPOINTED and HAS_FSYNCED_INODE are only guaranteed after the checkpoint write has fully completed.

This patch moves set_dentry_mark() into __write_node_folio() and protects it with the sbi->node_write lock.

Database specific
{
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/53xxx/CVE-2026-53368.json"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
88bd02c9472a166b706284a34a84f1243322d782
Fixed
270c519bca3a59b6140d176415aff16e4e06f9e3
Fixed
bedb710b63ae1bd617e65d0a8cf6cea1200b3753
Fixed
b28a83ea4934215b5de906c3ee4fbfbc651573e0
Fixed
019f9dda7f66e55eb94cd32e1d3fff5835f73fbc

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2026-53368.json"

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
3.18.0
Fixed
6.12.114
Type
ECOSYSTEM
Events
Introduced
6.13.0
Fixed
6.18.30
Type
ECOSYSTEM
Events
Introduced
6.19.0
Fixed
7.0.7

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2026-53368.json"