| KASSERT(9) | FreeBSD Kernel Developer's Manual | KASSERT(9) |
名称
KASSERT — カーネル式 (expression) 検証マクロ解説
options INVARIANTS を付けてコンパイルされたカーネルでは、 KASSERT() マクロは、与えられた expression をテストして、それが偽であるなら、 panic(9) 関数を呼び出し、実行しているシステムを終了します。options INVARIANTS がないカーネルでは、 KASSERT() マクロは、無効の操作 (no-op) であると定義されます。 2 番目の引数は、括弧で囲まれた printf(9) のフォーマット文字列とその引数です。
使用例
カーネル関数 vput() を NULL ポインタを付けて呼び出してはいけません。
void
vput(vp)
struct vnode *vp;
{
struct proc *p = curproc;
KASSERT(vp != NULL, ("vput: null vp"));
...
}
作者
このマニュアルページは、 <jmb@FreeBSD.org>によって書かれました。| January 14, 2000 | FreeBSD |