Man Linux: Main Page and Category List

NAME

       fdatasync - synchronize the data of a file (REALTIME)

SYNOPSIS

       #include <unistd.h>

       int fdatasync(int fildes);

DESCRIPTION

       The   fdatasync()   function  shall  force  all  currently  queued  I/O
       operations associated with the file indicated by file descriptor fildes
       to the synchronized I/O completion state.

       The  functionality  shall  be  equivalent  to  fsync()  with the symbol
       _POSIX_SYNCHRONIZED_IO  defined,  with  the  exception  that  all   I/O
       operations  shall  be  completed  as  defined for synchronized I/O data
       integrity completion.

RETURN VALUE

       If successful, the fdatasync()  function  shall  return  the  value  0;
       otherwise,  the  function  shall  return  the value -1 and set errno to
       indicate the error. If the fdatasync() function fails, outstanding  I/O
       operations are not guaranteed to have been completed.

ERRORS

       The fdatasync() function shall fail if:

       EBADF  The  fildes  argument  is  not  a valid file descriptor open for
              writing.

       EINVAL This implementation does not support synchronized I/O  for  this
              file.

       In  the  event  that any of the queued I/O operations fail, fdatasync()
       shall return the error conditions defined for read() and write().

       The following sections are informative.

EXAMPLES

       None.

APPLICATION USAGE

       None.

RATIONALE

       None.

FUTURE DIRECTIONS

       None.

SEE ALSO

       aio_fsync() , fcntl() , fsync() , open() , read() , write() , the  Base
       Definitions volume of IEEE Std 1003.1-2001, <unistd.h>

COPYRIGHT

       Portions  of  this text are reprinted and reproduced in electronic form
       from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
       --  Portable  Operating  System  Interface (POSIX), The Open Group Base
       Specifications Issue 6, Copyright (C) 2001-2003  by  the  Institute  of
       Electrical  and  Electronics  Engineers, Inc and The Open Group. In the
       event of any discrepancy between this version and the original IEEE and
       The  Open Group Standard, the original IEEE and The Open Group Standard
       is the referee document. The original Standard can be  obtained  online
       at http://www.opengroup.org/unix/online.html .