Ext4 data journaling
Ext4 data journaling sends supported file contents and filesystem metadata through the journal before their final locations.
For ordinary unencrypted regular files, data=journal journals contents alongside metadata. When journaling would otherwise apply, Linux v6.12 instead selects ordered mode for fscrypt-encrypted regular files. The per-inode journal-data override requires disabled delayed allocation. [4] A filesystem transaction does not automatically match an application's multi-write or multi-file update. [1]
The Linux v6.12 guide states that this mode disables delayed allocation and O_DIRECT support. [2] The inode's data-journaling state makes ext4_dio_alignment return zero. [5] The write path then falls back to buffered I/O; its NOWAIT path rejects with EOPNOTSUPP, while earlier lock contention can yield EAGAIN. O_DIRECT alone does not verify page-cache bypass. [6]
Relations
Citations
- Linux v6.12: journal coverage and ordered-mode fast commits
- Linux v6.12: ext4 data modes and auto_da_alloc
- Linux v6.12: ext4_inode_journal_mode, encrypted files and per-inode overrides
- Linux v6.12: ext4_dio_alignment, data-journal exclusion
- Linux v6.12: direct-I/O eligibility, buffered fallback and NOWAIT errors
Further reading
Sources & caveats
- Source review scoped to Linux v6.12; not a crash experiment or certification of later kernels.