Updated: 2021/Apr/14

GETVFSSTAT(2)                 System Calls Manual                GETVFSSTAT(2)

     getvfsstat - get list of all mounted file systems

     Standard C Library (libc, -lc)

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

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

     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.

     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.

     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.

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

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

NetBSD 9.99                     March 27, 2021                     NetBSD 9.99