Provided by: freebsd-manpages_7.0-2_all
vhold, vdrop, vdropl - acquire/release a hold on a vnode
vhold(struct vnode *vp);
vdrop(struct vnode *vp);
vdropl(struct vnode *vp);
The vhold() function increments 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.
The difference between vdrop() and vdropl() is that vdrop() locks the
vnode interlock and then calls vdropl() while vdropl() expects the
interlock to already be locked.
This manual page was written by Chad David 〈email@example.com〉.