Updated: 2022/Sep/29

Please read Privacy Policy. It's for your privacy.


GETVFSSTAT(2)                 System Calls Manual                GETVFSSTAT(2)

NAME
     getvfsstat - get list of all mounted file systems

LIBRARY
     Standard C Library (libc, -lc)

SYNOPSIS
     #include <sys/types.h>
     #include <sys/statvfs.h>

     int
     getvfsstat(struct statvfs *buf, size_t bufsize, int flags);

DESCRIPTION
     getvfsstat() returns information about all mounted file systems.  buf is
     a pointer to an array of statvfs structures defined in statvfs(5).

     The buffer is filled with an array of statvfs structures, one for each
     mounted file system up to the size specified by bufsize.

     If buf is given as NULL, getvfsstat() returns just the number of mounted
     file systems.

     Normally flags should be specified as ST_WAIT.  If flags is set to
     ST_NOWAIT, getvfsstat() will return the information it has available
     without requesting an update from each file system.  Thus, some of the
     information will be out of date, but getvfsstat() will not block waiting
     for information from a file system that is unable to respond.

     Note that bufsize is the size of the buffer in bytes, not the count of
     structures that will fit in it, and the return value is the count of
     structures, not the size.

RETURN VALUES
     Upon successful completion, the number of statvfs structures is returned.
     Otherwise, -1 is returned and the global variable errno is set to
     indicate the error.

ERRORS
     getvfsstat() fails if one or more of the following are true:

     [EFAULT]           buf points to an invalid address.

     [EIO]              An I/O error occurred while reading from or writing to
                        the file system.

SEE ALSO
     statvfs(2), getmntinfo(3), fstab(5), mount(8)

HISTORY
     The getvfsstat() function first appeared in NetBSD 3.0 to replace
     getfsstat() which appeared in 4.4BSD.

NetBSD 10.99                    March 27, 2021                    NetBSD 10.99