vfs_busy(9)
NAME
vfs_busy - marks a mount point as busy
SYNOPSIS
#include <sys/param.h> #include <sys/mount.h> int vfs_busy(struct mount *mp, int flags, struct mtx *interlkp, struct thread *td);
DESCRIPTION
- The vfs_busy() function marks a mount point as busy. The
- purpose of this
function is to synchronize access to a mount point. It also - delays
unmounting by sleeping on mp if the MNTK_UNMOUNT flag is set - in
mp->mnt_kern_flag and the LK_NOWAIT flag is not set. - Its arguments are:
- mp The mount point to busy.
- flags Flags controlling how vfs_busy() should act.
LK_NOWAIT do not sleep if MNTK_UNMOUNT is- set.
- interlkp The interlock mutex for mp->mount_lock. If
- there is any
- chance the mount point is being unmounted and
- LK_NOWAIT is
not set then interlock must be valid locked - mutex.
- td The thread responsible for this call.
LOCKS
- If interlkp is a valid pointer it must be locked on entry,
- and it will
not be unlocked even in the case of an error.
RETURN VALUES
- A 0 value is returned on success. If the mount point is be
- ing unmounted
ENOENT will always be returned.
ERRORS
- [ENOENT] The mount point is being unmounted (MN
- TK_UNMOUNT is
- set).
AUTHORS
- This manual page was written by Chad David <davidc@ac
- ns.ab.ca>.
- BSD July 8, 2001