VHOLD(9) | FreeBSD Kernel Developer's Manual | VHOLD(9) |
名称
vhold, vdrop, vdropl — 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);
解説
vhold() と vholdl() 関数は与えられた vnode の v_holdcnt を増加します。 vnode が既にフリーリストに追加されており、まだ参照されているなら、参照を取り除きます。vdrop() と vdropl() 関数は vnode の v_holdcnt を減少させます。 holdcount が vdrop() または vdropl(), を呼び出す前に 0 以下であるなら、システムはパニックとなります。 vnode がもう参照されないなら、解放されます。
vhold() と vdrop() は、 vholdl() と vdropl() が、インタロックが既に保持されると予期される間に、vnode インタロックをロックします。
関連項目
vnode(9)作者
このマニュアルページは <davidc@acns.ab.ca>によって書かれました。April 1, 2007 | FreeBSD |