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 8.2