KASSERT(9)

HOME || NAME SYNOPSIS DESCRIPTION EXAMPLES SEE ALSO AUTHORS
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 <jmb@FreeBSD.org>.