On Fri, 16 Nov 2007 11:47:27 +0900 Hisashi Hifumi [off-list ref] wrote:
Currently fdatasync is identical to fsync in ext3,4.
I think fdatasync should skip journal flush in data=ordered and data=writeback mode
because this syscall is not required to synchronize the metadata.
I suppose so. Although one wonders what earthly point there is in syncing
a file's data if we haven't yet written out the metadata which is required
for locating that data.
IOW, fdatasync() is only useful if the application knows that it is overwriting
already-instantiated blocks.
In which case it might as well have used fsync(). For ext2-style filesystems,
anyway.
hm. It needs some thought.