FDATASYNC(2) System Calls Manual FDATASYNC(2)
fdatasync -- synchronize the data of a file
Standard C Library (libc, -lc)
The fdatasync() function forces all modified data associated with the
file descriptor fd to be flushed to stable storage.
The functionality is as described for fsync(2), with the exception that
file status information need not be synchronized, which may result in a
performance gain, compared to fsync(2). This behaviour is commonly known
as synchronized I/O data integrity completion.
A value of 0 is returned on success. Otherwise, a value -1 is returned
and errno is set to indicate the error.
The fdatasync() function will fail if:
[EBADF] The fd argument is not a valid file descriptor open
[EINVAL] This implementation does not support synchronized I/O
for this file.
[ENOSYS] The fdatasync() function is not supported by this
In the event that any of the I/O operations to be performed fail,
fdatasync() returns the error conditions defined for read(2) and
write(2), and outstanding I/O operations are not guaranteed to have been
fsync(2), open(2), read(2), write(2)
The fdatasync() function conforms to IEEE Std 1003.1b-1993 (``POSIX.1'').
NetBSD 6.1.5 October 25, 2003 NetBSD 6.1.5