| STATVFS(2) | System Calls Manual | STATVFS(2) | 
statvfs, statvfs1,
  fstatvfs, fstatvfs1 —
#include <sys/statvfs.h>
int
  
  statvfs(const
    char *path, struct
    statvfs *buf);
int
  
  statvfs1(const
    char *path, struct
    statvfs *buf, int
    flags);
int
  
  fstatvfs(int
    fd, struct statvfs
    *buf);
int
  
  fstatvfs1(int
    fd, struct statvfs
    *buf, int
  flags);
statvfs() and statvfs1() return
  information about a mounted file system. path is the
  path name of any file within the mounted file system.
  buf is a pointer to a statvfs
  structure defined in
  statvfs(5).
fstatvfs() and
    fstatvfs1() return the same information about an
    open file referenced by descriptor fd.
The statvfs1() and
    fstatvfs1() functions allow an extra
    flags argument which can be
    ST_WAIT and ST_NOWAIT. When
    ST_NOWAIT is specified, then only cached statistics
    are returned. This can result in significant savings on non-local file
    systems, where gathering statistics involves a network communication.
The statvfs() and
    fstatvfs() calls are equivalent to the respective
    statvfs1() and fstatvfs1()
    calls with ST_WAIT specified as the
    flags argument.
statvfs() and statvfs1() fail if
  one or more of the following are true:
ENOTDIR]ENAMETOOLONG]NAME_MAX} characters, or the length of
      path exceeds {PATH_MAX}
      characters.ENOENT]EACCES]ELOOP]EFAULT]EIO]fstatvfs() and
    fstatvfs1() fail if one or more of the following are
    true:
statvfs(), statvfs1(),
  fstatvfs(), and fstatvfs1()
  functions first appeared in NetBSD 3.0 to replace the
  statfs() family of functions which first appeared in
  4.4BSD.
| April 14, 2004 | NetBSD 9.4 |