SPLRAISE(9)

SPLRAISE(9) | 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 9.0