POSIX_FADVISE(2) | System Calls Manual | POSIX_FADVISE(2)

# NAME

`posix_fadvise` — hint at the future access pattern of a file

# LIBRARY

Standard C Library (libc, -lc)

# SYNOPSIS

`#include <fcntl.h>`

int
`posix_fadvise`(int fd, off_t offset, off_t size, int hint);

# DESCRIPTION

`posix_fadvise`() hints at the application's access pattern to the file and range given by the file descriptor, fd, and offset and size. If size is zero, it means to the end of file.

hint should be one of the following:

POSIX_FADV_NORMAL
  No hint. (default)
POSIX_FADV_RANDOM
  Random access.
POSIX_FADV_SEQUENTIAL
  Sequential access. (from lower offset to higher offset.)
POSIX_FADV_WILLNEED
  Will be accessed.
POSIX_FADV_DONTNEED
  Will not be accessed.
POSIX_FADV_NOREUSE
  Will be accessed just once.

Calling `posix_fadvise`() doesn't alter the semantics of the operations, it is only a matter of performance.

# RETURN VALUES

On success, `posix_fadvise`() returns 0. Otherwise, it returns an error number.

# SEE ALSO

errno(2), madvise(2)

# BUGS

For `POSIX_FADV_NORMAL`, `POSIX_FADV_RANDOM`, and `POSIX_FADV_SEQUENTIAL`, the current implementation ignores offset and size, and applies the hint to the whole file.

February 4, 2013 | NetBSD 11.0