VFS_SYNC (9) | Kernel routines | Unix Manual Pages | :man▋
VFS_SYNC - flush unwritten data
.In sys/vnode.h int VFS_SYNC "struct mount *mp" "int waitfor" "struct ucred *cred" "struct thread *td"
The VFS_SYNC macro writes out all unwritten data in the file system mounted as mp.
The arguments it expects are:
| mp || The file system. |
| waitfor || Whether the function should wait for I/O to complete. Possible values are: |
| MNT_WAIT || synchronously wait for I/O to complete |
| MNT_NOWAIT |
| || start all I/O, but do not wait for it |
| MNT_LAZY || push data not written by file system syncer |
| cred || The callers credentials. |
| td || The calling thread. |
The VFS_SYNC macro calls the vfs_sync method of the file system, which normally calls VOP_FSYNC(9) for all the vnodes in the file system.
fsync(2), sync(2), VFS(9), vnode(9), VOP_FSYNC(9)