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

FreeBSD Manual Pages

  
 
  

home | help
POSIX_FADVISE(2)	  FreeBSD System Calls Manual	      POSIX_FADVISE(2)

NAME
     posix_fadvise -- give advice about	use of file data

LIBRARY
     Standard C	Library	(libc, -lc)

SYNOPSIS
     #include <fcntl.h>

     int
     posix_fadvise(int fd, off_t offset, off_t len, int	advice);

DESCRIPTION
     The posix_fadvise() system	call allows a process to describe to the sys-
     tem its data access behavior for an open file descriptor fd.  The advice
     covers the	data starting at offset	offset and continuing for len bytes.
     If	len is zero, all data from offset to the end of	the file is covered.

     The behavior is specified by the advice parameter and may be one of:

     POSIX_FADV_NORMAL	    Tells the system to	revert to the default data
			    access behavior.

     POSIX_FADV_RANDOM	    Is a hint that file	data will be accessed ran-
			    domly, and prefetching is likely not advantageous.

     POSIX_FADV_SEQUENTIAL  Tells the system that file data will be accessed
			    sequentially.  This	currently does nothing as the
			    default behavior uses heuristics to	detect sequen-
			    tial behavior.

     POSIX_FADV_WILLNEED    Tells the system that the specified	data will be
			    accessed in	the near future.  The system may ini-
			    tiate an asychronous read of the data if it	is not
			    already present in memory.

     POSIX_FADV_DONTNEED    Tells the system that the specified	data will not
			    be accessed	in the near future.  The system	may
			    decrease the in-memory priority of clean data
			    within the specified range and future access to
			    this data may require a read operation.

     POSIX_FADV_NOREUSE	    Tells the system that the specified	data will only
			    be accessed	once and then not reused.  Accesses to
			    data within	the specified range are	treated	as if
			    the	file descriptor	has the	O_DIRECT flag enabled.

RETURN VALUES
     The posix_fadvise() 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 posix_fadvise() system	call will fail if:

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

     [EINVAL]		The advice argument is not valid.

     [EINVAL]		The offset or len arguments are	negative, or offset +
			len is greater than the	maximum	file size.

     [ENODEV]		The fd argument	does not refer to a regular file.

     [ESPIPE]		The fd argument	is associated with a pipe or FIFO.

SEE ALSO
     madvise(2)

STANDARDS
     The posix_fadvise() interface conforms to IEEE Std	1003.1-2001
     (``POSIX.1'').

HISTORY
     The posix_fadvise() system	call first appeared in FreeBSD 10.0.

FreeBSD	11.1		       October 26, 2011			  FreeBSD 11.1

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

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

home | help