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



      vfs_busy - marks a mount point as busy


      #include <sys/param.h>
      #include <sys/mount.h>
      vfs_busy(struct mount *mp, int flags, struct mtx *interlkp,
              struct thread *td);


      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.


      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.


      [ENOENT]           The mount point is being unmounted (MNTK_UNMOUNT is


      This manual page was written by Chad David 〈〉.


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.