PT-2026-51911 · Linux · Linux

Publicado

2026-06-24

·

Atualizado

2026-06-24

·

CVE-2026-53017

Nenhuma

Não há classificações de severidade ou métricas disponíveis. Quando houver, atualizaremos as informações correspondentes na página.
In the Linux kernel, the following vulnerability has been resolved:
f2fs: fix data loss caused by incorrect use of nat entry flag
Data loss can occur when fsync is performed on a newly created file (before any checkpoint has been written) concurrently with a checkpoint operation. 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 flush nat entries
  • f2fs fsync node pages // no dirty node
  • f2fs need inode block update // return false SPO and lost 'file A'
f2fs flush nat entries() sets the IS CHECKPOINTED and HAS LAST FSYNC flags for the nat entry, but this does not mean that the checkpoint has actually completed successfully. However, f2fs need inode block update() checks these flags and incorrectly assumes that the checkpoint has finished.
The root cause is that the semantics of IS CHECKPOINTED and HAS LAST FSYNC are only guaranteed after the checkpoint write fully completes.
This patch modifies f2fs need inode block update() to acquire the sbi->node write lock before reading the nat entry flags, ensuring that once IS CHECKPOINTED and HAS LAST FSYNC are observed to be set, the checkpoint operation has already completed.
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾

Identificadores relacionados

CVE-2026-53017

Produtos afetados

Linux