iso9660fs: initialize buffer cache
[minix.git] / man / man2 / statvfs.2
blob505ead51372aa55ea50926767d27caeec2fbf5de
1 .\"     $NetBSD: statvfs.2,v 1.4 2005/11/04 06:09:20 gendalia Exp $
2 .\"
3 .\" Copyright (c) 1989, 1991, 1993
4 .\"     The Regents of the University of California.  All rights reserved.
5 .\"
6 .\" Redistribution and use in source and binary forms, with or without
7 .\" modification, are permitted provided that the following conditions
8 .\" are met:
9 .\" 1. Redistributions of source code must retain the above copyright
10 .\"    notice, this list of conditions and the following disclaimer.
11 .\" 2. Redistributions in binary form must reproduce the above copyright
12 .\"    notice, this list of conditions and the following disclaimer in the
13 .\"    documentation and/or other materials provided with the distribution.
14 .\" 3. Neither the name of the University nor the names of its contributors
15 .\"    may be used to endorse or promote products derived from this software
16 .\"    without specific prior written permission.
17 .\"
18 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
19 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
22 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
27 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28 .\" SUCH DAMAGE.
29 .\"
30 .\"     @(#)statfs.2    8.5 (Berkeley) 5/24/95
31 .\"
32 .Dd April 14, 2004
33 .Dt STATVFS 2
34 .Os
35 .Sh NAME
36 .Nm statvfs ,
37 .Nm fstatvfs ,
38 .Nd get file system statistics
39 .Sh LIBRARY
40 .Lb libc
41 .Sh SYNOPSIS
42 .In sys/statvfs.h
43 .Ft int
44 .Fn statvfs "const char *path" "struct statvfs *buf"
45 .Ft int
46 .Fn fstatvfs "int fd" "struct statvfs *buf"
47 .Sh DESCRIPTION
48 .Fn statvfs
49 returns information about a mounted file system.
50 .Fa path
51 is the path name of any file within the mounted file system.
52 .Fa buf
53 is a pointer to a
54 .Nm statvfs
55 structure defined in
56 .Xr statvfs 5 .
57 .Pp
58 .Fn fstatvfs
59 returns the same information about an open file referenced by descriptor
60 .Fa fd .
61 .Pp
62 .Sh RETURN VALUES
63 Upon successful completion, a value of 0 is returned.
64 Otherwise, \-1 is returned and the global variable
65 .Va errno
66 is set to indicate the error.
67 .Sh ERRORS
68 .Fn statvfs
69 fails if one or more of the following are true:
70 .Bl -tag -width Er
71 .It Bq Er ENOTDIR
72 A component of the path prefix of
73 .Fa path
74 is not a directory.
75 .It Bq Er ENAMETOOLONG
76 The length of a component of
77 .Fa path
78 exceeds
79 .Dv NAME_MAX
80 characters, or the length of
81 .Fa path
82 exceeds
83 .Dv PATH_MAX
84 characters.
85 .It Bq Er ENOENT
86 The file referred to by
87 .Fa path
88 does not exist.
89 .It Bq Er EACCES
90 Search permission is denied for a component of the path prefix of
91 .Fa path .
92 .It Bq Er ELOOP
93 Too many symbolic links were encountered in translating
94 .Fa path .
95 .It Bq Er EFAULT
96 .Fa buf
98 .Fa path
99 points to an invalid address.
100 .It Bq Er EIO
102 .Tn I/O
103 error occurred while reading from or writing to the file system.
106 .Fn fstatvfs
107 fails if one or more of the following are true:
108 .Bl -tag -width Er
109 .It Bq Er EBADF
110 .Fa fd
111 is not a valid open file descriptor.
112 .It Bq Er EFAULT
113 .Fa buf
114 points to an invalid address.
115 .It Bq Er EIO
117 .Tn I/O
118 error occurred while reading from or writing to the file system.
120 .Sh SEE ALSO
121 .Xr statvfs 5
122 .Sh HISTORY
124 .Fn statvfs ,
126 .Fn fstatvfs ,
127 functions first appeared in
128 .Nx 3.0
129 to replace
131 .Fn statfs
132 family of functions which first appeared in
133 .Bx 4.4 .