1) Fix prototype in vget(9).
authorSascha Wildner <swildner@dragonflybsd.org>
Sun, 4 Mar 2007 02:45:08 +0000 (02:45 +0000)
committerSascha Wildner <swildner@dragonflybsd.org>
Sun, 4 Mar 2007 02:45:08 +0000 (02:45 +0000)
2) Add vhold/vdrop manual page.

3) Some mdoc cleanup.

[2] and some of [3] taken from: FreeBSD

share/man/man9/Makefile
share/man/man9/vget.9
share/man/man9/vhold.9 [new file with mode: 0644]
share/man/man9/vnode.9
share/man/man9/vput.9
share/man/man9/vref.9
share/man/man9/vrele.9

index 50893d8..56d305c 100644 (file)
@@ -1,5 +1,5 @@
 # $FreeBSD: src/share/man/man9/Makefile,v 1.60.2.26 2003/06/13 01:04:17 hmp Exp $
-# $DragonFly: src/share/man/man9/Makefile,v 1.43 2007/02/18 14:17:29 swildner Exp $
+# $DragonFly: src/share/man/man9/Makefile,v 1.44 2007/03/04 02:45:08 swildner Exp $
 
 MAN=   DECLARE_MODULE.9 DELAY.9 DEV_MODULE.9 KASSERT.9 MD5.9 \
        MODULE_DEPEND.9 MODULE_VERSION.9 SYSCALL_MODULE.9 \
@@ -30,7 +30,7 @@ MAN=  DECLARE_MODULE.9 DELAY.9 DEV_MODULE.9 KASSERT.9 MD5.9 \
        rman.9 \
        rtalloc.9 rtentry.9 sleep.9 spinlock.9 \
        store.9 style.9 suser.9 time.9 timeout.9 uio.9 \
-       vget.9 vnode.9 vput.9 vref.9 vrele.9 vslock.9 \
+       vget.9 vhold.9 vnode.9 vput.9 vref.9 vrele.9 vslock.9 \
        microtime.9 microuptime.9 tvtohz.9
 
 MAN+=  device.9 device_add_child.9 device_delete_child.9 device_enable.9 \
@@ -236,6 +236,7 @@ MLINKS+=timeout.9 callout_handle_init.9 timeout.9 callout_init.9
 MLINKS+=timeout.9 callout_stop.9 timeout.9 callout_reset.9
 MLINKS+=uio.9 uiomove.9
 MLINKS+=vref.9 VREF.9
+MLINKS+=vhold.9 vdrop.9
 MLINKS+=vslock.9 vsunlock.9
 
 MLINKS+=device_add_child.9 device_add_child_ordered.9
index 0ee2077..e0f56c9 100644 (file)
@@ -25,9 +25,9 @@
 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
 .\" $FreeBSD: src/share/man/man9/vget.9,v 1.5.2.1 2001/12/17 11:30:19 ru Exp $
-.\" $DragonFly: src/share/man/man9/vget.9,v 1.4 2004/06/01 11:36:53 hmp Exp $
+.\" $DragonFly: src/share/man/man9/vget.9,v 1.5 2007/03/04 02:45:08 swildner Exp $
 .\"
-.Dd July 24, 1996
+.Dd March 4, 2007
 .Os
 .Dt VGET 9
 .Sh NAME
 .In sys/param.h
 .In sys/vnode.h
 .Ft int
-.Fn vget "struct vnode *vp" "int lockflag" "struct proc *p"
+.Fn vget "struct vnode *vp" "int lockflag"
 .Sh DESCRIPTION
 Get a vnode from the free list and increment its reference count.
-.Bl -tag -width lockflag
+.Bl -tag -width ".Fa lockflag"
 .It Fa vp
-the vnode to remove from the free list
+The vnode to remove from the free list.
 .It Fa lockflag
-if non-zero, the vnode will also be locked
+If non-zero, the vnode will also be locked.
 .El
 .Pp
 When not in use, vnodes are kept on a free list.  The vnodes still
@@ -56,7 +56,7 @@ When a vnode which is on the free list is used again, for instance if
 the vnode was found in the name cache as a result of a call to
 .Xr VOP_LOOKUP 9
 then the new user must call
-.Xr vget 9
+.Fn vget
 to increment the reference count and remove it from the free list.
 .Sh SEE ALSO
 .Xr vnode 9 ,
@@ -64,5 +64,5 @@ to increment the reference count and remove it from the free list.
 .Xr vref 9 ,
 .Xr vrele 9
 .Sh AUTHORS
-This man page was written by
+This manual page was written by
 .An Doug Rabson .
diff --git a/share/man/man9/vhold.9 b/share/man/man9/vhold.9
new file mode 100644 (file)
index 0000000..4059ab6
--- /dev/null
@@ -0,0 +1,66 @@
+.\"
+.\" Copyright (C) 2001 Chad David <davidc@acns.ab.ca>. All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice(s), this list of conditions and the following disclaimer as
+.\"    the first lines of this file unmodified other than the possible
+.\"    addition of one or more copyright notices.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice(s), this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) ``AS IS'' AND ANY
+.\" EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+.\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+.\" DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
+.\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+.\" CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+.\" DAMAGE.
+.\"
+.\" $FreeBSD: src/share/man/man9/vhold.9,v 1.4 2005/07/22 00:28:22 rodrigc Exp $
+.\" $DragonFly: src/share/man/man9/vhold.9,v 1.1 2007/03/04 02:45:08 swildner Exp $
+.\"
+.Dd March 4, 2007
+.Dt VHOLD 9
+.Os
+.Sh NAME
+.Nm vhold , vdrop
+.Nd "acquire/release a hold on a vnode"
+.Sh SYNOPSIS
+.In sys/param.h
+.In sys/vnode.h
+.Ft void
+.Fn vhold "struct vnode *vp"
+.Ft void
+.Fn vdrop "struct vnode *vp"
+.Sh DESCRIPTION
+The
+.Fn vhold
+function increments the
+.Va v_holdcnt
+of the given vnode.
+If the vnode has already been added to the free list and is still referenced,
+it will be removed.
+.Pp
+The
+.Fn vdrop
+function decrements the
+.Va v_holdcnt
+of the vnode.
+If the holdcount is less than or equal to zero prior to calling
+.Fn vdrop ,
+the system will panic.
+If the vnode is no longer referenced, it will be freed.
+.Sh SEE ALSO
+.Xr vbusy 9 ,
+.Xr vfree 9
+.Sh AUTHORS
+This manual page was written by
+.An Chad David Aq davidc@acns.ab.ca .
index d9c86c1..d9cda87 100644 (file)
@@ -25,7 +25,7 @@
 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
 .\" $FreeBSD: src/share/man/man9/vnode.9,v 1.10.2.5 2001/12/17 11:30:19 ru Exp $
-.\" $DragonFly: src/share/man/man9/vnode.9,v 1.4 2003/07/28 07:27:38 hmp Exp $
+.\" $DragonFly: src/share/man/man9/vnode.9,v 1.5 2007/03/04 02:45:08 swildner Exp $
 .\"
 .Dd June 28, 2003
 .Os
@@ -112,7 +112,7 @@ field is used by the
 macros to call functions in the filesystem which implement the vnode's
 functionality.
 .Sh VNODE TYPES
-.Bl -tag -width VSOCK
+.Bl -tag -width ".Fa VSOCK"
 .It Dv VNON
 No type.
 .It Dv VREG
@@ -136,7 +136,7 @@ A FIFO (named pipe).  Advisory locking won't work on this.
 .It Dv VBAD
 An old style bad sector map
 .El
-.Sh NOTES
+.Sh IMPLEMENTATION NOTES
 VFIFO uses the "struct fileops" from
 .Pa /sys/kern/sys_pipe.c .
 VSOCK uses the "struct fileops" from
index b5c8b7f..f7fdc4c 100644 (file)
@@ -25,7 +25,7 @@
 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
 .\" $FreeBSD: src/share/man/man9/vput.9,v 1.6.2.3 2001/12/17 11:30:19 ru Exp $
-.\" $DragonFly: src/share/man/man9/vput.9,v 1.4 2004/06/01 11:36:53 hmp Exp $
+.\" $DragonFly: src/share/man/man9/vput.9,v 1.5 2007/03/04 02:45:08 swildner Exp $
 .\"
 .Dd July 24, 1996
 .Os
@@ -42,9 +42,9 @@
 Decrement the
 .Va v_usecount
 field of a vnode and unlock the vnode.
-.Bl -tag -width 2n
+.Bl -tag -width ".Fa vp"
 .It Fa vp
-the vnode to decrement
+The vnode to decrement.
 .El
 .Pp
 This operation is functionally equivalent to calling
@@ -57,5 +57,5 @@ followed by
 .Xr vref 9 ,
 .Xr vrele 9
 .Sh AUTHORS
-This man page was written by
+This manual page was written by
 .An Doug Rabson .
index 8b373a5..6ae7e5b 100644 (file)
@@ -25,7 +25,7 @@
 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
 .\" $FreeBSD: src/share/man/man9/vref.9,v 1.6.2.2 2001/12/17 11:30:19 ru Exp $
-.\" $DragonFly: src/share/man/man9/vref.9,v 1.4 2004/06/01 11:36:53 hmp Exp $
+.\" $DragonFly: src/share/man/man9/vref.9,v 1.5 2007/03/04 02:45:08 swildner Exp $
 .\"
 .Dd July 24, 1996
 .Os
@@ -42,9 +42,9 @@
 Increment the
 .Va v_usecount
 field of a vnode.
-.Bl -tag -width 2n
+.Bl -tag -width ".Fa vp"
 .It Fa vp
-the vnode to increment
+The vnode to increment.
 .El
 .Pp
 Each vnode maintains a reference count of how many parts of the system
@@ -54,12 +54,12 @@ no longer being used and can be safely recycled for a different file.
 Any code in the system which is using a vnode (e.g. during the
 operation of some algorithm or to store in a data structure) should
 call
-.Xr vref 9 .
+.Fn vref .
 .Sh SEE ALSO
 .Xr vget 9 ,
 .Xr vnode 9 ,
 .Xr vput 9 ,
 .Xr vrele 9
 .Sh AUTHORS
-This man page was written by
+This manual page was written by
 .An Doug Rabson .
index d6754b1..c7c87e8 100644 (file)
@@ -25,7 +25,7 @@
 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
 .\" $FreeBSD: src/share/man/man9/vrele.9,v 1.6.2.2 2001/12/17 11:30:19 ru Exp $
-.\" $DragonFly: src/share/man/man9/vrele.9,v 1.4 2004/06/01 11:36:53 hmp Exp $
+.\" $DragonFly: src/share/man/man9/vrele.9,v 1.5 2007/03/04 02:45:08 swildner Exp $
 .\"
 .Dd July 24, 1996
 .Os
 Decrement the
 .Va v_usecount
 field of a vnode.
-.Bl -tag -width 2n
+.Bl -tag -width ".Fa vp"
 .It Fa vp
-the vnode to decrement
+The vnode to decrement.
 .El
 .Pp
 Any code in the system which is using a vnode should call
-.Xr vrele 9
+.Fn vrele
 when it is finished with the vnode.
 If the
 .Va v_usecount
@@ -59,5 +59,5 @@ field of the vnode reaches zero, then it will be placed on the free list.
 .Xr vput 9 ,
 .Xr vref 9
 .Sh AUTHORS
-This man page was written by
+This manual page was written by
 .An Doug Rabson .