Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

fsync_volume_np(3) [mojave man page]

SYNC_VOLUME_NP(3)					   BSD Library Functions Manual 					 SYNC_VOLUME_NP(3)

NAME
sync_volume_np -- Sync a mounted filesystem LIBRARY
Standard C Library (libc, -lc) SYNOPSIS
#include <unistd.h> int sync_volume_np(const char *path, int flags); int fsync_volume_np(int fd, int flags); DESCRIPTION
The sync_volume_np() function causes data and metadata on the filesystem containing path to be synced to disk; this may be any file or direc- tory on that filesystem. The fsync_volume_np() does the same thing, but using an open file descriptor for that filesystem. Both functions take a flags parameter, with the currently-defined options: SYNC_VOLUME_FULLSYNC Request that the data and metadata be written to the disk hardware; if not set, then the hardware may keep it in cache. SYNC_VOLUME_WAIT Wait for the data and metadata to be written; if not set, then it will return when the requests have been made. RETURN VALUES
Both functions return 0 on success, and a non-zero error code on error. ERRORS
The fsync_volume_np() function may return EBADF if the fd parameter is not a valid, open file descriptor. The sync_volume_np() function may return errors if: [EACCES] Search permission is denied for a component of the path prefix. [EIO] An I/O error occurs while reading from or writing to the file system. [ELOOP] Too many symbolic links are encountered in translating the pathname. This is taken to be indicative of a looping symbolic link. [ENAMETOOLONG] A component of a pathname exceeds {NAME_MAX} characters, or an entire path name exceeds {PATH_MAX} characters. [ENOENT] The named file does not exist. [ENOTDIR] A component of the path prefix is not a directory. BSD
June 1, 2019 BSD

Check Out this Related Man Page

STATVFS(2)						      BSD System Calls Manual							STATVFS(2)

NAME
statvfs, statvfs1, fstatvfs, fstatvfs1 -- get file system statistics LIBRARY
Standard C Library (libc, -lc) SYNOPSIS
#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); DESCRIPTION
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 filesystems, 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. RETURN VALUES
Upon successful completion, a value of 0 is returned. Otherwise, -1 is returned and the global variable errno is set to indicate the error. ERRORS
statvfs() and statvfs1() fail if one or more of the following are true: [ENOTDIR] A component of the path prefix of path is not a directory. [ENAMETOOLONG] The length of a component of path exceeds {NAME_MAX} characters, or the length of path exceeds {PATH_MAX} characters. [ENOENT] The file referred to by path does not exist. [EACCES] Search permission is denied for a component of the path prefix of path. [ELOOP] Too many symbolic links were encountered in translating path. [EFAULT] buf or path points to an invalid address. [EIO] An I/O error occurred while reading from or writing to the file system. fstatvfs() and fstatvfs1() fail if one or more of the following are true: [EBADF] fd is not a valid open file descriptor. [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(5) HISTORY
The 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. BSD
April 14, 2004 BSD
Man Page