KPREEMPT(9)            NetBSD Kernel Developer's Manual            KPREEMPT(9)

NAME
     kpreempt -- control kernel preemption

SYNOPSIS
     #include <sys/systm.h>

     void
     kpreempt_disable(void);

     void
     kpreempt_enable(void);

     bool
     kpreempt_disabled(void);

DESCRIPTION
     These functions are used to control kernel preemption of the calling LWP.

     On architectures where kernel preemption is not supported natively, these
     functions may still be used.

     kpreempt_disable() disables kernel preemption of the calling LWP.  Note
     that disabling kernel preemption can prevent LWPs with higher priorities
     from running.

     kpreempt_enable() enables kernel preemption of the calling LWP, which was
     previously disabled by kpreempt_disable().

     kpreempt_disable() and kpreempt_enable() can be nested.

     kpreempt_disabled() returns true if preemption of the calling LWP is dis-
     abled.  It's for diagnostic purpose.

SEE ALSO
     intro(9), spl(9)

NetBSD 5.0_STABLE              December 21, 2008             NetBSD 5.0_STABLE
