Manpage of 'KASSERT' on UHLU - BSD System Documentation,
Programming Reference, Manual Pages and Source Code
All manual pages         All RFC pages
Common page
for KASSERT
Other pages
for KASSERT
More pages
containing KASSERT

Section 9 manual page or howto for 'KASSERT'  

KASSERT(9)	       FreeBSD 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
     config(8), panic(9)

AUTHORS
     This manual page was written by Jonathan M. Bresler <jmb@FreeBSD.org>.

FreeBSD 7.2		       January 14, 2000 		   FreeBSD 7.2

NAME - SYNOPSIS - DESCRIPTION - EXAMPLES - SEE ALSO - AUTHORS -  
All manual pages         All RFC pages
Common page
for KASSERT
Other pages
for KASSERT
More pages
containing KASSERT
A random manual page         All manual pages        All RFC pages