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

名称

vfs_busyマウントポイントをビジーとしてマークする

書式

#include < sys/param.h>
#include < sys/mount.h>

int
vfs_busy( struct mount *mp, int flags);

解説

vfs_busy() 関数は、マウントポイントの参照カウントを増加することによって、マウントポイントがビジーとマークします。この関数の目的は、マウントポイントへのアクセスを同時にさせることです。また、 MNTK_UNMOUNT フラグが mp->mnt_kern_flag に設定されて、 MBF_NOWAIT フラグが設定されて いない なら、 mp でスリープすることによってアンマウントを遅らせます。

引数は、次の通りです:

mp
ビジーにするマウントポイント。
flags
vfs_busy() がどのように行動するべきであるかを制御するフラグ。
MBF_NOWAIT
MNTK_UNMOUNT が設定されるなら、スリープしません。
MBF_MNTLSTLOCK
クリティカルパスで mountlist_mtx を落とします。

戻り値

成功すれば 0 の値を返します。マウントポイントがアンマウントされていて、MBF_NOWAIT フラグが指定されているなら、 ENOENT が返されます。

エラー

[ ENOENT]
マウントポイントがアンマウントされています ( MNTK_UNMOUNT が設定されています)。

関連項目

vfs_unbusy(9)

作者

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