(add missing file related to last commit)
authorMatthew Dillon <dillon@dragonflybsd.org>
Tue, 24 May 2005 21:22:05 +0000 (21:22 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Tue, 24 May 2005 21:22:05 +0000 (21:22 +0000)
commited03f3a3f0a5c3b55c21258770b4982d1a8e3ac3
treeb9b29de95e6e75b2d569b61ed13ca8e83828ab64
parentd7ded5e6d1a51c78717e7b29b3aed7093c603848
(add missing file related to last commit)

Get rid of bus_{disable,enable}_intr(), it wasn't generic enough for
our needs.

Implement some generic atomic.h functions to aid in the implementation of
a low level mutex.

Implement a generic low level sleep-mutex serializer, kern/lwkt_serialize.c.
The serializer is designed to be a replacement for SPL calls but may also
be used for other very low level work (e.g. lockmgr interlocks).

Add a serializer argument to BUS_SETUP_INTR().  When non-NULL, the interrupt
handler will no longer be protected by an SPL so e.g. spl*() will no
longer protect against that device's interrupts.

The IF queueing and dequeueing mechanisms may no longer depend on outside
SPL state because network driver interrupt handlers are no longer required to
enter splnet().  Use critical sections for the moment.  The IFQ and
IFF_OACTIVE interactions are not yet MP safe.
sys/kern/lwkt_serialize.c [new file with mode: 0644]