SPLRAISE(9) | NetBSD Kernel Developer's Manual | SPLRAISE(9)

# NAME

spllower, splraise — modify system interrupt priority level

# SYNOPSIS

#include <machine/intr.h>

void
spllower(int s);

int
splraise(int s);

# DESCRIPTION

These functions raise and lower the interrupt priority level on i386. They are used by machine-dependent kernel code to implement the machine-independent spl(9) interface.

In a multi-CPU system, these functions change the interrupt priority level on the local CPU only. In general, device drivers should not make use of these functions.

The spllower() function sets the system priority level to the one encoded in s, if s is lower than the current level. Otherwise, it does not change the level. Use splx() instead of spllower(), except in extraordinary circumstances.

The splraise() function sets the system priority level to the one encoded in s, if s is greater than the current level, and returns the previous level. Otherwise, it does not change the level, and it returns the current level. Except in extraordinary circumstances, do not use splraise(). Use one of the priority-raising functions defined in spl(9), instead.

# SEE ALSO

condvar(9), mutex(9), rwlock(9), spl(9)

February 5, 2010 | NetBSD 5.99