#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
Fa mp
if the
MNTK_UNMOUNT
flag is set in
Fa mp->mnt_kern_flag
and the
LK_NOWAIT
flag is
not
set.
Its arguments are:
Fa mp
The mount point to busy.
Fa flags
Flags controlling how
vfs_busy ();
should act.
LK_NOWAIT
do not sleep if
MNTK_UNMOUNT
is set.
Fa interlkp
The interlock mutex for
Fa 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.
Fa td
The thread responsible for this call.
LOCKS
If
Fa 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 being
unmounted
Er ENOENT
will always be returned.
ERRORS
Bq Er ENOENT
The mount point is being unmounted
( MNTK_UNMOUNT
is set).
AUTHORS
This manual page was written by
An Chad David Aq davidc@acns.ab.ca .