NOTE: _file_ attributes
>
> synchronised I/O file integrity completion
>
> Identical to a synchronised I/O data integrity completion with the
> addition that all file attributes relative to the I/O operation
> (including access time, modification time, status change time) will be
> successfully transferred prior to returning to the calling process."
>
> As I understand it, the directory entry's st_ino is a file attribute
> necessary for data retrieval and also contains the m/a/ctime, so it must
> be flushed to disk on fsync() as well.
>
As long as you have an open fd, no directory entry is needed for
data retrieval. In fact some fds never have a directory entry
(e.g. sockets - but these don't support fsync anyway) or do not have a
directory entry in their user-visble interface (e.g. posix shm).
And m/a/ctime is in the inode of the file, not in the directory enrty.
(at least for usual UNIX filesystems).
> Well, if there's not a single dirent, you cannot retrieve the data,
Of course you can, you can pass and fd for an unliked file everywhere
using AF_LOCAL descriptor passing.
Christoph
-- Of course it doesn't work. We've performed a software upgrade. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/