FSYNC(2)

HOME || NAME LIBRARY SYNOPSIS DESCRIPTION RETURN VALUES ERRORS SEE ALSO HISTORY
NAME
     fsync -- synchronise changes to a file
LIBRARY
     Standard C Library (libc, -lc)
SYNOPSIS
     #include <unistd.h>

     int
     fsync(int fd);
DESCRIPTION
     The fsync() system call causes all modified data and attributes of fd to
     be moved to a permanent storage device.  This normally results in all in-
     core modified copies of buffers for the associated file to be written to
     a disk.

     The fsync() system call should be used by programs that require a file to
     be in a known state, for example, in building a simple transaction facil-
     ity.
RETURN VALUES
     The fsync() function returns the value 0 if successful; otherwise the
     value -1 is returned and the global variable errno is set to indicate the
     error.
ERRORS
     The fsync() fails if:

     [EBADF]		The fd argument is not a valid descriptor.

     [EINVAL]		The fd argument refers to a socket, not to a file.

     [EIO]		An I/O error occurred while reading from or writing to
			the file system.
SEE ALSO
     sync(2), syncer(4), sync(8)
HISTORY
     The fsync() system call appeared in 4.2BSD.