freebsd-skq/sys/netatm
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
..
ipatm Lock down the network interface queues. The queue mutex must be obtained 2000-11-25 07:35:38 +00:00
sigpvc Remove more unused #includes. 2000-10-30 07:42:06 +00:00
spans Remove more unused #includes. 2000-10-30 07:42:06 +00:00
uni Remove more unused #includes. 2000-10-30 07:42:06 +00:00
atm_aal5.c Add back some #include <sys/systm.h> which were needed when <sys/ktr.h> 2000-10-30 20:37:01 +00:00
atm_cm.c Add back some #include <sys/systm.h> which were needed when <sys/ktr.h> 2000-10-30 20:37:01 +00:00
atm_cm.h More HARP polishina: 2000-10-12 07:42:34 +00:00
atm_device.c Lock down the network interface queues. The queue mutex must be obtained 2000-11-25 07:35:38 +00:00
atm_if.c Remove more unused #includes. 2000-10-27 21:14:25 +00:00
atm_if.h Remove the #include kitchensink <netatm/kern_include.h> and add 2000-10-12 08:14:20 +00:00
atm_ioctl.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
atm_pcb.h More HARP polishina: 2000-10-12 07:42:34 +00:00
atm_proto.c Remove more unused #includes. 2000-10-27 21:14:25 +00:00
atm_sap.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
atm_sigmgr.h More HARP polishina: 2000-10-12 07:42:34 +00:00
atm_signal.c Remove more unused #includes. 2000-10-27 21:14:25 +00:00
atm_socket.c Remove more unused #includes. 2000-10-27 21:14:25 +00:00
atm_stack.h More HARP polishina: 2000-10-12 07:42:34 +00:00
atm_subr.c Lock down the network interface queues. The queue mutex must be obtained 2000-11-25 07:35:38 +00:00
atm_sys.h More HARP polishina: 2000-10-12 07:42:34 +00:00
atm_usrreq.c Move suser() and suser_xxx() prototypes and a related #define from 2000-10-29 16:06:56 +00:00
atm_var.h More HARP polishina: 2000-10-12 07:42:34 +00:00
atm_vc.h More HARP polishina: 2000-10-12 07:42:34 +00:00
atm.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
port.h More HARP polishina: 2000-10-12 07:42:34 +00:00
queue.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00