DEV_CLONE(9) | FreeBSD Kernel Developer's Manual | DEV_CLONE(9) |
名称
dev_clone, drain_dev_clone_events — devfs の名前ベースのデバイスクローニングのためのイベントハンドラ書式
#include < sys/param.h>#include < sys/conf.h>
void
clone_handler( void *arg, struct ucred *cr, char *name, int namelen, struct cdev **dev);
EVENTHANDLER_REGISTER(dev_clone, clone_handler, arg, priority);
void
drain_dev_clone_events();
解説
デバイスドライバは、 devfs マウントポイントで名前検索が vnode を見つけることに失敗するたびに通知されるリスナを登録します。リスナは、 dev_clone イベントのために登録されるものとします。呼ばれたとき、ハンドラ登録時間、適切な資格証明 cr、検索された長さ namelen の名前 name で指定された最初の引数 arg を供給します。ハンドラが、名前が適切であり、名前に関連するデバイスを作成したいと決心するなら、 dev 引数の devfs にそれを返すべきです。drain_dev_clone_events() 関数は、バリアです。 drain_dev_clone_events() 呼び出しの前に開始された dev_clone のためのイベントハンドラへのすべての呼び出しが制御を返す前に、終了していることが保証されます。
January 3, 2009 | FreeBSD |