VOP_FSYNC — flush file system buffers for a file
VOP_FSYNC(struct vnode *vp, int waitfor, struct thread *td);
This call flushes any dirty file system buffers for the file. It is used
to implement the sync(2) and fsync(2) system calls.
Its arguments are:
vp The vnode of the file.
waitfor Whether the function should wait for I/O to complete. Possible
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.
td The calling thread.
The argument waitfor is either MNT_WAIT or MNT_NOWAIT and specifies
whether or not the function should wait for the writes to finish before
The file should be locked on entry.
Zero is returned if the call is successful, otherwise an appropriate
error code is returned.
[ENOSPC] The file system is full.
[EDQUOT] Quota exceeded.
This manual page was written by Doug Rabson.