freebsd-dev/sys/dev/iicbus
Jonathan Lemon df5e198723 Lock down the network interface queues. The queue mutex must be obtained
before adding/removing packets from the queue.  Also, the if_obytes and
if_omcasts fields should only be manipulated under protection of the mutex.

IF_ENQUEUE, IF_PREPEND, and IF_DEQUEUE perform all necessary locking on
the queue.  An IF_LOCK macro is provided, as well as the old (mutex-less)
versions of the macros in the form _IF_ENQUEUE, _IF_QFULL, for code which
needs them, but their use is discouraged.

Two new macros are introduced: IF_DRAIN() to drain a queue, and IF_HANDOFF,
which takes care of locking/enqueue, and also statistics updating/start
if necessary.
2000-11-25 07:35:38 +00:00
..
if_ic.c Lock down the network interface queues. The queue mutex must be obtained 2000-11-25 07:35:38 +00:00
iic.c Remove unneeded #include <machine/clock.h> 2000-10-15 14:19:01 +00:00
iic.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
iicbb_if.m * Factor out the object system from new-bus so that it can be used by 2000-04-08 14:17:18 +00:00
iicbb.c Remove unneeded #include <machine/clock.h> 2000-10-15 14:19:01 +00:00
iicbus_if.m * Factor out the object system from new-bus so that it can be used by 2000-04-08 14:17:18 +00:00
iicbus.c Remove unneeded #include <machine/clock.h> 2000-10-15 14:19:01 +00:00
iicbus.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
iiconf.c Remove unneeded #include <sys/kernel.h> 2000-04-29 15:36:14 +00:00
iiconf.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
iicsmb.c Remove unneeded #include <machine/clock.h> 2000-10-15 14:19:01 +00:00