xref: /dflybsd-src/share/man/man9/vput.9 (revision 86d7f5d305c6adaa56ff4582ece9859d73106103)
1*86d7f5d3SJohn Marino.\" Copyright (c) 1996 Doug Rabson
2*86d7f5d3SJohn Marino.\"
3*86d7f5d3SJohn Marino.\" All rights reserved.
4*86d7f5d3SJohn Marino.\"
5*86d7f5d3SJohn Marino.\" This program is free software.
6*86d7f5d3SJohn Marino.\"
7*86d7f5d3SJohn Marino.\" Redistribution and use in source and binary forms, with or without
8*86d7f5d3SJohn Marino.\" modification, are permitted provided that the following conditions
9*86d7f5d3SJohn Marino.\" are met:
10*86d7f5d3SJohn Marino.\" 1. Redistributions of source code must retain the above copyright
11*86d7f5d3SJohn Marino.\"    notice, this list of conditions and the following disclaimer.
12*86d7f5d3SJohn Marino.\" 2. Redistributions in binary form must reproduce the above copyright
13*86d7f5d3SJohn Marino.\"    notice, this list of conditions and the following disclaimer in the
14*86d7f5d3SJohn Marino.\"    documentation and/or other materials provided with the distribution.
15*86d7f5d3SJohn Marino.\"
16*86d7f5d3SJohn Marino.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR
17*86d7f5d3SJohn Marino.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
18*86d7f5d3SJohn Marino.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
19*86d7f5d3SJohn Marino.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT,
20*86d7f5d3SJohn Marino.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
21*86d7f5d3SJohn Marino.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
22*86d7f5d3SJohn Marino.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
23*86d7f5d3SJohn Marino.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24*86d7f5d3SJohn Marino.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
25*86d7f5d3SJohn Marino.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26*86d7f5d3SJohn Marino.\"
27*86d7f5d3SJohn Marino.\" $FreeBSD: src/share/man/man9/vput.9,v 1.6.2.3 2001/12/17 11:30:19 ru Exp $
28*86d7f5d3SJohn Marino.\"
29*86d7f5d3SJohn Marino.Dd May 5, 2007
30*86d7f5d3SJohn Marino.Dt VPUT 9
31*86d7f5d3SJohn Marino.Os
32*86d7f5d3SJohn Marino.Sh NAME
33*86d7f5d3SJohn Marino.Nm vput
34*86d7f5d3SJohn Marino.Nd "Decrement the primary reference count for a vnode and unlock it"
35*86d7f5d3SJohn Marino.Sh SYNOPSIS
36*86d7f5d3SJohn Marino.In sys/param.h
37*86d7f5d3SJohn Marino.In sys/vnode.h
38*86d7f5d3SJohn Marino.Ft void
39*86d7f5d3SJohn Marino.Fn vput "struct vnode *vp"
40*86d7f5d3SJohn Marino.Sh DESCRIPTION
41*86d7f5d3SJohn MarinoDecrement the vnode's primary reference count (via the
42*86d7f5d3SJohn Marino.Fa v_sysref
43*86d7f5d3SJohn Marinofield) and unlock the vnode.
44*86d7f5d3SJohn Marino.Bl -tag -width ".Fa vp"
45*86d7f5d3SJohn Marino.It Fa vp
46*86d7f5d3SJohn MarinoThe vnode in question.
47*86d7f5d3SJohn Marino.El
48*86d7f5d3SJohn Marino.Pp
49*86d7f5d3SJohn MarinoThis operation is functionally equivalent to calling
50*86d7f5d3SJohn Marino.Xr vn_unlock 9
51*86d7f5d3SJohn Marinofollowed by
52*86d7f5d3SJohn Marino.Xr vrele 9 .
53*86d7f5d3SJohn MarinoReleasing the last primary reference on a vnode will cause it to be
54*86d7f5d3SJohn Marinodeactivated and either moved to the free list or cached.
55*86d7f5d3SJohn MarinoVnodes with namecache and/or VM objects are typically marked as being cached
56*86d7f5d3SJohn Marinounless the system needs the memory for other purposes.
57*86d7f5d3SJohn Marino.Sh SEE ALSO
58*86d7f5d3SJohn Marino.Xr vdrop 9 ,
59*86d7f5d3SJohn Marino.Xr vget 9 ,
60*86d7f5d3SJohn Marino.Xr vhold 9 ,
61*86d7f5d3SJohn Marino.Xr vnode 9 ,
62*86d7f5d3SJohn Marino.Xr vn_lock 9 ,
63*86d7f5d3SJohn Marino.Xr vn_unlock 9 ,
64*86d7f5d3SJohn Marino.Xr vref 9 ,
65*86d7f5d3SJohn Marino.Xr vrele 9
66*86d7f5d3SJohn Marino.Sh AUTHORS
67*86d7f5d3SJohn MarinoThis manual page was written by
68*86d7f5d3SJohn Marino.An Doug Rabson .
69