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

FreeBSD Manual Pages

  
 
  

home | help
VOP_ALLOCATE(9) 	    Kernel Developer's Manual		 VOP_ALLOCATE(9)

NAME
     VOP_ALLOCATE -- allocate storage for a file

SYNOPSIS
     #include <sys/param.h>
     #include <sys/vnode.h>

     int
     VOP_ALLOCATE(struct vnode *vp, off_t *offset, off_t *len, int ioflag,
	 struct ucred *cred);

DESCRIPTION
     This  call  allocates storage for a range of offsets in a file.  It is used
     to implement the posix_fallocate(2) system call.

     Its arguments are:

     vp      The vnode of the file.

     offset  The start of the range to allocate storage for in the file.

     len     The length of the range to allocate storage for in the file.

     ioflag  Directives and hints to be given to the file system.

     cred    The credentials of the caller.

     The offset and len arguments are updated to  reflect  the	portion  of  the
     range  that still needs to be allocated on return.  A partial allocation is
     considered a successful operation.  The file's contents are not changed.

LOCKS
     The file should be exclusively locked on entry and will still be locked  on
     exit.

RETURN VALUES
     Zero  is returned if the call is successful, otherwise an appropriate error
     code is returned.

ERRORS
     [EFBIG]		An attempt was made to write a	file  that  exceeds  the
			process's file size limit or the maximum file size.

     [ENOSPC]		The file system is full.

     [EPERM]		An  append-only  flag is set on the file, but the caller
			is attempting to write before the current end of file.

SEE ALSO
     vnode(9), VOP_READ(9), VOP_WRITE(9)

FreeBSD ports 15.quarterly	November 8, 2021		 VOP_ALLOCATE(9)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=VOP_ALLOCATE&sektion=9&manpath=FreeBSD+15.1-RELEASE+and+Ports.quarterly>

home | help