EN JA
VHOLD(9)
VHOLD(9) FreeBSD Kernel Developer's Manual VHOLD(9)

名称

vhold, vdrop, vdroplvnode で保持を取得する/解放する

書式

#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);

解説

vhold() と vholdl() 関数は与えられた vnode の v_holdcnt を増加します。 vnode が既にフリーリストに追加されており、まだ参照されているなら、参照を取り除きます。

vdrop() と vdropl() 関数は vnode の v_holdcnt を減少させます。 holdcount が vdrop() または vdropl(), を呼び出す前に 0 以下であるなら、システムはパニックとなります。 vnode がもう参照されないなら、解放されます。

vhold() と vdrop() は、 vholdl() と vdropl() が、インタロックが既に保持されると予期される間に、vnode インタロックをロックします。

関連項目

vnode(9)

作者

このマニュアルページは Chad David <davidc@acns.ab.ca>によって書かれました。
April 1, 2007 FreeBSD