NAME

KASSERT, KDASSERT - kernel expression verification macros

SYNOPSIS



void KASSERT(expression)

void KDASSERT(expression)

DESCRIPTION

These machine independent assertion-checking macros cause a kernel panic(9) if the given expression evaluates to false.

KASSERT() tests are included only in kernels compiled with the DIAGNOSTIC configuration option. In a kernel that does not have this configuration option, the KASSERT() macro is defined to be a no-op.

KDASSERT() tests are included only in kernels compiled with the DEBUG configuration option. KDASSERT() and KASSERT() are identical except for the controlling option (DEBUG vs DIAGNOSTIC).

The panic message will display the style of assertion (debugging vs. diagnostic), the expression that failed and the filename, and line number the failure happened on.

SEE ALSO

config(1), panic(9), printf(9)

AUTHORS

These macros were written by Chris G. Demetriou
<cgd@netbsd.org>.