Reference

KASSERT(9)

kernel expression verification macro

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

config(8), panic(9)

AUTHORS

This manual page was written by Jonathan M. Bresler ⟨[email protected]⟩.