xref: /freebsd/share/man/man9/VFS_STATFS.9 (revision 3d5ea0fba4798b1a70d8de1fe9735ada6d16f158)
1.\" -*- nroff -*-
2.\"
3.\" Copyright (c) 1996 Doug Rabson
4.\"
5.\" All rights reserved.
6.\"
7.\" This program is free software.
8.\"
9.\" Redistribution and use in source and binary forms, with or without
10.\" modification, are permitted provided that the following conditions
11.\" are met:
12.\" 1. Redistributions of source code must retain the above copyright
13.\"    notice, this list of conditions and the following disclaimer.
14.\" 2. Redistributions in binary form must reproduce the above copyright
15.\"    notice, this list of conditions and the following disclaimer in the
16.\"    documentation and/or other materials provided with the distribution.
17.\"
18.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR
19.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
20.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
21.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT,
22.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
23.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28.\"
29.\" $FreeBSD$
30.\"
31.Dd January 7, 2005
32.Os
33.Dt VFS_STATFS 9
34.Sh NAME
35.Nm VFS_STATFS
36.Nd return file system status
37.Sh SYNOPSIS
38.In sys/param.h
39.In sys/mount.h
40.In sys/vnode.h
41.Ft int
42.Fn VFS_STATFS "struct mount *mp" "struct statfs *sbp" "struct thread *td"
43.Sh DESCRIPTION
44The
45.Fn VFS_STATFS
46macro returns various pieces of information about the file system,
47including recommended I/O sizes, free space, free inodes, etc.
48.Pp
49The arguments it expects are:
50.Bl -tag -width sbp
51.It Fa mp
52The file system.
53.It Fa sbp
54A
55.Dt statfs
56structure, as defined by
57.In sys/mount.h ,
58into which information is placed about the file system.
59.It Fa td
60The thread which is querying the file system.
61.El
62.Pp
63The fields of
64.Ft "struct statfs"
65related to the file system are as follows:
66.Bl -tag -width ".Fa f_mntfromname"
67.It Va f_type
68Type of file system.
69.It Va f_flags
70A copy of mount exported flags.
71.It Va f_bsize
72Fragment size.
73.It Va f_iosize
74Optimal transfer block size.
75.It Va f_blocks
76The total number of data blocks in the file system.
77.It Va f_bfree
78The number of free blocks in the file system.
79.It Va f_bavail
80The number of free blocks available to non-superuser processes.
81.It Va f_files
82The total number of file nodes in the file system.
83.It Va f_ffree
84The number of free nodes available to non-superuser processes.
85.It Va f_syncwrites
86The number of synchronous writes since the file system was mounted.
87.It Va f_asyncwrites
88The number of asynchronous writes since the file system was mounted.
89.It Va f_syncreads
90The number of synchronous reads since the file system was mounted.
91.It Va f_asyncreads
92The number of asynchronous reads since the file system was mounted.
93.It Va f_namemax
94The maximum file name length for this file system.
95.It Va f_owner
96The user ID of the user that mounted the file system.
97.It Va f_fsid
98Unique file system ID.
99.It Va f_fstypename
100The file system type name; a string of at most
101.Dv MFSNAMELEN
102bytes.
103.It Va f_mntfromname
104The device name the file system was mounted from; a string of at most
105.Dv MNAMELEN
106bytes.
107.It Va f_mntonname
108The name of the directory on which the file system is mounted;
109a string of at most
110.Dv MNAMELEN
111bytes.
112.El
113.Sh SEE ALSO
114.Xr VFS 9 ,
115.Xr vnode 9
116.Sh AUTHORS
117This manual page was written by
118.An Doug Rabson .
119