FSYNC(2) — SYSTEM CALLS
NAME
fsync − synchronize a file’s in-core state with that on disk
SYNOPSIS
fsync(fd)
int fd;
DESCRIPTION
Fsync causes all modified data and attributes of fd to be moved to a permanent storage device: all in-core modified copies of buffers for the associated file have been written to a disk when the call returns. (Note that this is different than sync(2) which schedules disk-io for all files (as though an fsync had been done on all files) but returns before the i/o completes.)
Fsync should be used by programs which require a file to be in a known state; for example in building a simple transaction facility.
RETURN VALUE
A 0 value is returned on success. A −1 value indicates an error.
ERRORS
The fsync fails if:
[EBADF] Fd is not a valid descriptor.
[EINVAL] Fd refers to a socket, not to a file.
SEE ALSO
BUGS
The current implementation of this call is expensive for large files.
Sun Release 2.0 — Last change: 29 August 1983