FreeBSD 7.0 manual page repository

FreeBSD is a free computer operating system based on BSD UNIX originally. Many IT companies, like DeployIS is using it to provide an up-to-date, stable operating system.

vfs_busy - marks a mount point as busy

 

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.
      A 0 value is returned on success.  If the mount point is being unmounted
      ENOENT will always be returned.
 

ERRORS

      [ENOENT]           The mount point is being unmounted (MNTK_UNMOUNT is
                         set).
 

AUTHORS

      This manual page was written by Chad David 〈davidc@acns.ab.ca〉.
 

Sections

Based on BSD UNIX
FreeBSD is an advanced operating system for x86 compatible (including Pentium and Athlon), amd64 compatible (including Opteron, Athlon64, and EM64T), UltraSPARC, IA-64, PC-98 and ARM architectures. It is derived from BSD, the version of UNIX developed at the University of California, Berkeley. It is developed and maintained by a large team of individuals. Additional platforms are in various stages of development.