CVE-2026-23267

EUVD-2026-12908
In the Linux kernel, the following vulnerability has been resolved:

f2fs: fix IS_CHECKPOINTED flag inconsistency issue caused by concurrent atomic commit and checkpoint writes

During SPO tests, when mounting F2FS, an -EINVAL error was returned from
f2fs_recover_inode_page. The issue occurred under the following scenario

Thread A                                     Thread B
f2fs_ioc_commit_atomic_write
 - f2fs_do_sync_file // atomic = true
  - f2fs_fsync_node_pages
    : last_folio = inode folio
    : schedule before folio_lock(last_folio) f2fs_write_checkpoint
                                              - block_operations// writeback last_folio
                                              - schedule before f2fs_flush_nat_entries
    : set_fsync_mark(last_folio, 1)
    : set_dentry_mark(last_folio, 1)
    : folio_mark_dirty(last_folio)
    - __write_node_folio(last_folio)
      : f2fs_down_read(&sbi->node_write)//block
                                              - f2fs_flush_nat_entries
                                                : {struct nat_entry}->flag |= BIT(IS_CHECKPOINTED)
                                              - unblock_operations
                                                : f2fs_up_write(&sbi->node_write)
                                             f2fs_write_checkpoint//return
      : f2fs_do_write_node_page()
f2fs_ioc_commit_atomic_write//return
                                             SPO

Thread A calls f2fs_need_dentry_mark(sbi, ino), and the last_folio has
already been written once. However, the {struct nat_entry}->flag did not
have the IS_CHECKPOINTED set, causing set_dentry_mark(last_folio, 1) and
write last_folio again after Thread B finishes f2fs_write_checkpoint.

After SPO and reboot, it was detected that {struct node_info}->blk_addr
was not NULL_ADDR because Thread B successfully write the checkpoint.

This issue only occurs in atomic write scenarios. For regular file
fsync operations, the folio must be dirty. If
block_operations->f2fs_sync_node_pages successfully submit the folio
write, this path will not be executed. Otherwise, the
f2fs_write_checkpoint will need to wait for the folio write submission
to complete, as sbi->nr_pages[F2FS_DIRTY_NODES] > 0. Therefore, the
situation where f2fs_need_dentry_mark checks that the {struct
nat_entry}->flag /wo the IS_CHECKPOINTED flag, but the folio write has
already been submitted, will not occur.

Therefore, for atomic file fsync, sbi->node_write should be acquired
through __write_node_folio to ensure that the IS_CHECKPOINTED flag
correctly indicates that the checkpoint write has been completed.
ProviderTypeBase ScoreAtk. VectorAtk. ComplexityPriv. RequiredVector
NISTPrimary
UNKNOWN
---
Awaiting analysis
This vulnerability is currently awaiting analysis.
Base Score
CVSS 3.x
EPSS Score
Percentile: Unknown
Debian logo
Debian Releases
Debian Product
Codename
linux
bookworm
vulnerable
bookworm (security)
6.1.164-1
fixed
bullseye
vulnerable
bullseye (security)
vulnerable
forky
6.19.6-2
fixed
sid
6.19.8-1
fixed
trixie
vulnerable
trixie (security)
6.12.74-2
fixed
Ubuntu logo
Ubuntu Releases
Ubuntu Product
Codename
linux
bionic
needs-triage
focal
needs-triage
jammy
needs-triage
noble
needs-triage
questing
needs-triage
trusty
needs-triage
xenial
needs-triage
linux-hwe
bionic
ignored
jammy
dne
noble
dne
questing
dne
xenial
needs-triage
linux-hwe-5.4
bionic
needs-triage
jammy
dne
noble
dne
questing
dne
linux-hwe-5.8
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-hwe-5.11
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-hwe-5.13
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-hwe-5.15
focal
needs-triage
jammy
dne
noble
dne
questing
dne
linux-hwe-5.19
jammy
ignored
noble
dne
questing
dne
linux-hwe-6.2
jammy
ignored
noble
dne
questing
dne
linux-hwe-6.5
jammy
ignored
noble
dne
questing
dne
linux-hwe-6.8
jammy
needs-triage
noble
dne
questing
dne
linux-hwe-6.11
jammy
dne
noble
ignored
questing
dne
linux-hwe-6.14
jammy
dne
noble
needs-triage
questing
dne
linux-hwe-6.17
jammy
dne
noble
needs-triage
questing
dne
linux-hwe-edge
bionic
ignored
jammy
dne
noble
dne
questing
dne
xenial
ignored
linux-lts-xenial
jammy
dne
noble
dne
questing
dne
trusty
needs-triage
linux-kvm
bionic
needs-triage
focal
needs-triage
jammy
needs-triage
noble
dne
questing
dne
xenial
needs-triage
linux-allwinner-5.19
jammy
ignored
noble
dne
questing
dne
linux-aws
bionic
needs-triage
focal
needs-triage
jammy
needs-triage
noble
needs-triage
questing
needs-triage
trusty
needs-triage
xenial
needs-triage
linux-aws-5.0
bionic
ignored
jammy
dne
noble
dne
questing
dne
linux-aws-5.3
bionic
ignored
jammy
dne
noble
dne
questing
dne
linux-aws-5.4
bionic
needs-triage
jammy
dne
noble
dne
questing
dne
linux-aws-5.8
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-aws-5.11
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-aws-5.13
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-aws-5.15
focal
needs-triage
jammy
dne
noble
dne
questing
dne
linux-aws-5.19
jammy
ignored
noble
dne
questing
dne
linux-aws-6.2
jammy
ignored
noble
dne
questing
dne
linux-aws-6.5
jammy
ignored
noble
dne
questing
dne
linux-aws-6.8
jammy
needs-triage
noble
dne
questing
dne
linux-aws-6.14
jammy
dne
noble
needs-triage
questing
dne
linux-aws-6.17
jammy
dne
noble
needs-triage
questing
dne
linux-aws-hwe
jammy
dne
noble
dne
questing
dne
xenial
needs-triage
linux-azure
bionic
ignored
focal
needs-triage
jammy
needs-triage
noble
needs-triage
questing
needs-triage
trusty
needs-triage
xenial
needs-triage
linux-azure-4.15
bionic
needs-triage
jammy
dne
noble
dne
questing
dne
linux-azure-5.3
bionic
ignored
jammy
dne
noble
dne
questing
dne
linux-azure-5.4
bionic
needs-triage
jammy
dne
noble
dne
questing
dne
linux-azure-5.8
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-azure-5.11
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-azure-5.13
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-azure-5.15
focal
needs-triage
jammy
dne
noble
dne
questing
dne
linux-azure-5.19
jammy
ignored
noble
dne
questing
dne
linux-azure-6.2
jammy
ignored
noble
dne
questing
dne
linux-azure-6.5
jammy
ignored
noble
dne
questing
dne
linux-azure-6.8
jammy
needs-triage
noble
dne
questing
dne
linux-azure-6.11
jammy
dne
noble
ignored
questing
dne
linux-azure-6.14
jammy
dne
noble
needs-triage
questing
dne
linux-azure-6.17
jammy
dne
noble
needs-triage
questing
dne
linux-azure-fde
focal
ignored
jammy
needs-triage
noble
needs-triage
questing
needs-triage
linux-azure-fde-5.15
focal
needs-triage
jammy
dne
noble
dne
questing
dne
linux-azure-fde-5.19
jammy
ignored
noble
dne
questing
dne
linux-azure-fde-6.2
jammy
ignored
noble
dne
questing
dne
linux-azure-fde-6.8
jammy
needs-triage
noble
dne
questing
dne
linux-azure-fde-6.14
jammy
dne
noble
needs-triage
questing
dne
linux-azure-fde-6.17
jammy
dne
noble
needs-triage
questing
dne
linux-azure-nvidia
jammy
dne
noble
needs-triage
questing
dne
linux-azure-nvidia-6.14
jammy
dne
noble
needs-triage
questing
dne
linux-bluefield
focal
needs-triage
jammy
dne
noble
dne
questing
dne
linux-azure-edge
bionic
ignored
jammy
dne
noble
dne
questing
dne
linux-fips
bionic
needs-triage
focal
needs-triage
jammy
dne
noble
dne
questing
dne
xenial
needs-triage
linux-aws-fips
bionic
needs-triage
focal
needs-triage
jammy
dne
noble
dne
questing
dne
linux-azure-fips
bionic
needs-triage
focal
needs-triage
jammy
dne
noble
dne
questing
dne
linux-gcp-fips
bionic
needs-triage
focal
needs-triage
jammy
dne
noble
dne
questing
dne
linux-gcp
bionic
ignored
focal
needs-triage
jammy
needs-triage
noble
needs-triage
questing
needs-triage
xenial
needs-triage
linux-gcp-4.15
bionic
needs-triage
jammy
dne
noble
dne
questing
dne
linux-gcp-5.3
bionic
ignored
jammy
dne
noble
dne
questing
dne
linux-gcp-5.4
bionic
needs-triage
jammy
dne
noble
dne
questing
dne
linux-gcp-5.8
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-gcp-5.11
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-gcp-5.13
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-gcp-5.15
focal
needs-triage
jammy
dne
noble
dne
questing
dne
linux-gcp-5.19
jammy
ignored
noble
dne
questing
dne
linux-gcp-6.2
jammy
ignored
noble
dne
questing
dne
linux-gcp-6.5
jammy
ignored
noble
dne
questing
dne
linux-gcp-6.8
jammy
needs-triage
noble
dne
questing
dne
linux-gcp-6.11
jammy
dne
noble
ignored
questing
dne
linux-gcp-6.14
jammy
dne
noble
needs-triage
questing
dne
linux-gcp-6.17
jammy
dne
noble
needs-triage
questing
dne
linux-gke
focal
ignored
jammy
needs-triage
noble
needs-triage
questing
dne
linux-gke-4.15
bionic
ignored
jammy
dne
noble
dne
questing
dne
linux-gke-5.4
bionic
ignored
jammy
dne
noble
dne
questing
dne
linux-gke-5.15
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-gkeop
focal
ignored
jammy
needs-triage
noble
needs-triage
questing
dne
linux-gkeop-5.4
bionic
ignored
jammy
dne
noble
dne
questing
dne
linux-gkeop-5.15
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-ibm
focal
needs-triage
jammy
needs-triage
noble
needs-triage
questing
dne
linux-ibm-5.4
bionic
needs-triage
jammy
dne
noble
dne
questing
dne
linux-ibm-5.15
focal
needs-triage
jammy
dne
noble
dne
questing
dne
linux-ibm-6.8
jammy
needs-triage
noble
dne
questing
dne
linux-intel-5.13
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-intel-iotg
jammy
needs-triage
noble
dne
questing
dne
linux-intel-iotg-5.15
focal
needs-triage
jammy
dne
noble
dne
questing
dne
linux-iot
focal
needs-triage
jammy
dne
noble
dne
questing
dne
linux-intel-iot-realtime
jammy
ignored
noble
dne
questing
dne
linux-lowlatency
jammy
needs-triage
noble
needs-triage
questing
dne
linux-lowlatency-hwe-5.15
focal
needs-triage
jammy
dne
noble
dne
questing
dne
linux-lowlatency-hwe-5.19
jammy
ignored
noble
dne
questing
dne
linux-lowlatency-hwe-6.2
jammy
ignored
noble
dne
questing
dne
linux-lowlatency-hwe-6.5
jammy
ignored
noble
dne
questing
dne
linux-lowlatency-hwe-6.8
jammy
needs-triage
noble
dne
questing
dne
linux-lowlatency-hwe-6.11
jammy
dne
noble
ignored
questing
dne
linux-nvidia
jammy
needs-triage
noble
needs-triage
questing
dne
linux-nvidia-6.2
jammy
ignored
noble
dne
questing
dne
linux-nvidia-6.5
jammy
ignored
noble
dne
questing
dne
linux-nvidia-6.8
jammy
needs-triage
noble
dne
questing
dne
linux-nvidia-6.11
jammy
dne
noble
ignored
questing
dne
linux-nvidia-lowlatency
jammy
dne
noble
needs-triage
questing
dne
linux-nvidia-tegra
jammy
needs-triage
noble
needs-triage
questing
dne
linux-nvidia-tegra-5.15
focal
needs-triage
jammy
dne
noble
dne
questing
dne
linux-nvidia-tegra-igx
jammy
needs-triage
noble
dne
questing
dne
linux-oracle
bionic
needs-triage
focal
needs-triage
jammy
needs-triage
noble
needs-triage
questing
needs-triage
xenial
needs-triage
linux-oracle-5.0
bionic
ignored
jammy
dne
noble
dne
questing
dne
linux-oracle-5.3
bionic
ignored
jammy
dne
noble
dne
questing
dne
linux-oracle-5.4
bionic
needs-triage
jammy
dne
noble
dne
questing
dne
linux-oracle-5.8
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-oracle-5.11
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-oracle-5.13
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-oracle-5.15
focal
needs-triage
jammy
dne
noble
dne
questing
dne
linux-oracle-6.5
jammy
ignored
noble
dne
questing
dne
linux-oracle-6.8
jammy
needs-triage
noble
dne
questing
dne
linux-oracle-6.14
jammy
dne
noble
needs-triage
questing
dne
linux-oracle-6.17
jammy
dne
noble
needs-triage
questing
dne
linux-oem
bionic
ignored
jammy
dne
noble
dne
questing
dne
linux-oem-5.6
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-oem-5.10
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-oem-5.13
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-oem-5.14
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-oem-5.17
jammy
ignored
noble
dne
questing
dne
linux-oem-6.0
jammy
ignored
noble
dne
questing
dne
linux-oem-6.1
jammy
ignored
noble
dne
questing
dne
linux-oem-6.5
jammy
ignored
noble
dne
questing
dne
linux-oem-6.8
jammy
dne
noble
ignored
questing
dne
linux-oem-6.11
jammy
dne
noble
ignored
questing
dne
linux-oem-6.14
jammy
dne
noble
needs-triage
questing
dne
linux-oem-6.17
jammy
dne
noble
needs-triage
questing
dne
linux-raspi
focal
needs-triage
jammy
needs-triage
noble
needs-triage
questing
needs-triage
linux-raspi2
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-raspi-5.4
bionic
needs-triage
jammy
dne
noble
dne
questing
dne
linux-raspi-realtime
jammy
dne
noble
ignored
questing
dne
linux-realtime
jammy
ignored
noble
ignored
questing
needs-triage
linux-realtime-6.8
jammy
dne
noble
dne
questing
dne
linux-realtime-6.14
jammy
dne
noble
dne
questing
dne
linux-riscv
focal
ignored
jammy
ignored
noble
ignored
questing
needs-triage
linux-riscv-5.8
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-riscv-5.11
focal
ignored
jammy
dne
noble
dne
questing
dne
linux-riscv-5.15
focal
needs-triage
jammy
dne
noble
dne
questing
dne
linux-riscv-5.19
jammy
ignored
noble
dne
questing
dne
linux-riscv-6.5
jammy
ignored
noble
dne
questing
dne
linux-riscv-6.8
jammy
needs-triage
noble
dne
questing
dne
linux-riscv-6.14
jammy
dne
noble
ignored
questing
dne
linux-riscv-6.17
jammy
dne
noble
needs-triage
questing
dne
linux-starfive-5.19
jammy
ignored
noble
dne
questing
dne
linux-starfive-6.2
jammy
ignored
noble
dne
questing
dne
linux-starfive-6.5
jammy
ignored
noble
dne
questing
dne
linux-xilinx
jammy
dne
noble
needs-triage
questing
dne
linux-xilinx-zynqmp
focal
needs-triage
jammy
needs-triage
noble
dne
questing
dne
linux-realtime-6.17
jammy
dne
noble
dne
questing
dne