Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
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	Ports 11.2	       January 14, 2000		    FreeBSD Ports 11.2

NAME | SYNOPSIS | DESCRIPTION | EXAMPLES | SEE ALSO | AUTHORS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=KASSERT&sektion=9&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help