VHOLD(9) | Kernel Developer's Manual | VHOLD(9) |
vhold
, vdrop
,
vdropl
— acquire/release a
hold on a vnode
#include
<sys/param.h>
#include <sys/vnode.h>
void
vhold
(struct
vnode *vp);
void
vholdl
(struct
vnode *vp);
void
vdrop
(struct
vnode *vp);
void
vdropl
(struct
vnode *vp);
The
vhold
()
and
vholdl
()
functions increment the 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.
The
vdrop
() and
vdropl
()
functions decrement the v_holdcnt of the vnode. If the
holdcount is less than or equal to zero prior to calling
vdrop
() or vdropl
(), the
system will panic. If the vnode is no longer referenced, it will be
freed.
vhold
()
and vdrop
() lock the vnode interlock while
vholdl
() and vdropl
() expect
the interlock to already be held.
This manual page was written by Chad David <davidc@acns.ab.ca>.
April 1, 2007 | Debian |