Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
FSYNC(2)		    BSD	System Calls Manual		      FSYNC(2)

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.

BSD				 June 4, 1993				   BSD

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | SEE ALSO | HISTORY

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=fsync&sektion=2&manpath=FreeBSD+5.3-RELEASE+and+Ports>

home | help