sync2(2) — System Calls
NAME
sync2 − Flush file system metadata and data from memory buffers to disk
SYNOPSIS
#include <sys/mount.h>
int sync2(
unsigned int POLICY,
char ∗path );
PARAMETERS
POLICY
Flush the file system memory buffers to disk. The argument is one of the following:
SYNC_SYNCPOLICY
Flush all memory buffers. Specifying this flag causes the function to behave the same as the sync() function. See sync(2).
SYNC_SMOOTHSYNCPOLICY
Flush all memory buffers except those under smooth sync control.
pathThe name of a UFS file system or AdvFS fileset. Specify the optional path parameter when you want to have the POLICY act only on that file system instead of all file systems. Specify a NULL argument when you want to have the POLICY act on all file systems.
DESCRIPTION
The sync2() function causes file system data to be flushed (written) to disk. Which memory buffers are flushed to disk depends on the POLICY argument.
If the policy is SYNC_SYNCPOLICY, all memory buffers are flushed to disk. If the policy is SYNC_SMOOTHSYNCPOLICY, all memory buffers except those under smooth sync control are flushed to disk.
To which file systems the POLICY argument applies depends on the path argument. To apply the policy to one file system, name it in the path argument. To apply the policy to all file systems, specify the path argument as NULL.
The writing, although scheduled, is not necessarily complete upon return from the sync2() function.
See the description of the smoothsync_age attribute in sys_attrs_vfs(5) for the definition of the smooth sync age period. See the description of the M_SMSYNC2 flag in mount(2) for information on enabling an alternate smooth sync policy.
SEE ALSO
Commands: sync(8)
Others: standards(5), sys_attrs_vfs(5)