| KASSERT(9) | Kernel Developer's Manual | KASSERT(9) |
NAME¶
KASSERT — kernel
expression verification macro
SYNOPSIS¶
options INVARIANTS
#include <sys/param.h>
#include <sys/systm.h>
KASSERT(expression,
msg);
DESCRIPTION¶
In a kernel compiled with options
INVARIANTS, the
KASSERT()
macro tests the given expression and if it is false,
calls the panic(9) function, terminating the running
system.
In a kernel that does not have
options INVARIANTS, the
KASSERT()
macro is defined to be a no-op. The second argument is a
printf(9) format string and its arguments, enclosed in
parentheses.
EXAMPLES¶
The kernel function vput() must not be
called with a NULL pointer.
void
vput(vp)
struct vnode *vp;
{
struct proc *p = curproc;
KASSERT(vp != NULL, ("vput: null vp"));
...
}
SEE ALSO¶
AUTHORS¶
This manual page was written by Jonathan M. Bresler <jmb@FreeBSD.org>.
| January 14, 2000 | Debian |