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

FreeBSD Manual Pages

  
 
  

home | help
POSIX_FALLOCATE(2)	      System Calls Manual	    POSIX_FALLOCATE(2)

NAME
       posix_fallocate -- pre-allocate storage for a range in a	file

LIBRARY
       Standard	C Library (libc, -lc)

SYNOPSIS
       #include	<fcntl.h>

       int
       posix_fallocate(int fd, off_t offset, off_t len);

DESCRIPTION
       Required	 storage for the range offset to offset	+ len in the file ref-
       erenced by fd is	guarateed to  be  allocated  upon  successful  return.
       That  is,  if posix_fallocate() returns successfully, subsequent	writes
       to the specified	file data will not fail	due to lack of free  space  on
       the file	system storage media.  Any existing file data in the specified
       range  is unmodified.  If offset	+ len is beyond	the current file size,
       then posix_fallocate() will adjust the file size	to offset + len.  Oth-
       erwise, the file	size will not be changed.

       Space allocated by posix_fallocate() will be freed by a successful call
       to creat(2) or open(2) that truncates the size of the file.  Space  al-
       located	via  posix_fallocate()	may  be	 freed by a successful call to
       ftruncate(2) that reduces the file size to a size smaller than offset +
       len.

RETURN VALUES
       If successful, posix_fallocate()	returns	zero.  It returns -1 on	 fail-
       ure, and	sets errno to indicate the error.

ERRORS
       Possible	failure	conditions:

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

       [EBADF]		  The  fd  argument  references	a file that was	opened
			  without write	permission.

       [EFBIG]		  The value of offset +	len is greater than the	 maxi-
			  mum file size.

       [EINTR]		  A signal was caught during execution.

       [EINVAL]		  The len argument was zero or the offset argument was
			  less than zero.

       [EIO]		  An  I/O error	occurred while reading from or writing
			  to a file system.

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

       [ENOSPC]		  There	is insufficient	free space  remaining  on  the
			  file system storage media.

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

SEE ALSO
       creat(2), ftruncate(2), open(2),	unlink(2)

STANDARDS
       The  posix_fallocate()  system  call  conforms  to IEEE Std 1003.1-2004
       ("POSIX.1").

HISTORY
       The posix_fallocate() function appeared in FreeBSD 9.0.

AUTHORS
       posix_fallocate() and  this  manual  page  were	initially  written  by
       Matthew Fleming <mdf@FreeBSD.org>.

FreeBSD	8.3			April 13, 2011		    POSIX_FALLOCATE(2)

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

home | help