]> git.ipfire.org Git - thirdparty/man-pages.git/blame - man3/posix_fallocate.3
getauxval.3: wfix
[thirdparty/man-pages.git] / man3 / posix_fallocate.3
CommitLineData
f50f6cb5 1.\" Copyright (c) 2006, Michael Kerrisk <mtk.manpages@gmail.com>
1cd27447 2.\"
93015253 3.\" %%%LICENSE_START(VERBATIM)
1cd27447
MK
4.\" Permission is granted to make and distribute verbatim copies of this
5.\" manual provided the copyright notice and this permission notice are
6.\" preserved on all copies.
7.\"
8.\" Permission is granted to copy and distribute modified versions of this
9.\" manual under the conditions for verbatim copying, provided that the
10.\" entire resulting derived work is distributed under the terms of a
11.\" permission notice identical to this one.
c13182ef 12.\"
1cd27447
MK
13.\" Since the Linux kernel and libraries are constantly changing, this
14.\" manual page may be incorrect or out-of-date. The author(s) assume no
15.\" responsibility for errors or omissions, or for damages resulting from
16.\" the use of the information contained herein. The author(s) may not
17.\" have taken the same level of care in the production of this manual,
18.\" which is licensed free of charge, as they might when working
19.\" professionally.
c13182ef 20.\"
1cd27447
MK
21.\" Formatted or processed versions of this manual, if unaccompanied by
22.\" the source, must acknowledge the copyright and authors of this work.
4b72fb64 23.\" %%%LICENSE_END
1cd27447 24.\"
fe0fefbf 25.TH POSIX_FALLOCATE 3 2015-03-02 "GNU" "Linux Programmer's Manual"
1cd27447
MK
26.SH NAME
27posix_fallocate \- allocate file space
28.SH SYNOPSIS
29.nf
063a2574 30.B #include <fcntl.h>
1cd27447
MK
31.sp
32.BI "int posix_fallocate(int " fd ", off_t " offset ", off_t " len );
1cd27447 33.fi
9a30939e
MK
34.sp
35.ad l
36.in -4n
37Feature Test Macro Requirements for glibc (see
38.BR feature_test_macros (7)):
39.in
40.sp
41.BR posix_fallocate ():
42.RS 4
43_XOPEN_SOURCE\ >=\ 600 || _POSIX_C_SOURCE\ >=\ 200112L
44.RE
45.ad
1cd27447
MK
46.SH DESCRIPTION
47The function
48.BR posix_fallocate ()
49ensures that disk space is allocated for the file referred to by the
50descriptor
51.I fd
52for the bytes in the range starting at
0daa9e92 53.I offset
c13182ef 54and continuing for
1cd27447
MK
55.I len
56bytes.
57After a successful call to
58.BR posix_fallocate (),
59subsequent writes to bytes in the specified range are
60guaranteed not to fail because of lack of disk space.
61
62If the size of the file is less than
63.IR offset + len ,
64then the file is increased to this size;
65otherwise the file size is left unchanged.
47297adb 66.SH RETURN VALUE
1cd27447
MK
67.BR posix_fallocate ()
68returns zero on success, or an error number on failure.
69Note that
0daa9e92 70.I errno
1cd27447 71is not set.
47297adb 72.SH ERRORS
1cd27447
MK
73.TP
74.B EBADF
75.I fd
76is not a valid file descriptor, or is not opened for writing.
77.TP
78.B EFBIG
79.I offset+len
80exceeds the maximum file size.
81.TP
82.B EINVAL
83.I offset
0c4dba93 84was less than 0, or
1cd27447 85.I len
0c4dba93 86was less than or equal to 0.
1cd27447
MK
87.TP
88.B ENODEV
89.I fd
90does not refer to a regular file.
91.TP
92.B ENOSPC
c13182ef 93There is not enough space left on the device containing the file
1cd27447 94referred to by
4df883b9 95.IR fd .
1cd27447
MK
96.TP
97.B ESPIPE
98.I fd
681445c1 99refers to a pipe.
a759cc87 100.SH VERSIONS
1cd27447
MK
101.BR posix_fallocate ()
102is available since glibc 2.1.94.
955269b4 103.SH ATTRIBUTES
83336152
PH
104For an explanation of the terms used in this section, see
105.BR attributes (7).
106.TS
107allbox;
108lb lb lb
109l l l.
110Interface Attribute Value
111T{
955269b4 112.BR posix_fallocate ()
83336152
PH
113T} Thread safety MT-Safe
114.TE
47297adb 115.SH CONFORMING TO
1cd27447 116POSIX.1-2001.
1480fa81 117