freebsd-dev/sys/i4b/layer1/isic
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
..
i4b_asuscom_ipac.c Remove unused #include statements 2000-10-30 14:49:26 +00:00
i4b_avm_a1.c Remove unused #include statements 2000-10-30 14:49:26 +00:00
i4b_bchan.c Lock down the network interface queues. The queue mutex must be obtained 2000-11-25 07:35:38 +00:00
i4b_ctx_s0P.c Remove unused #include statements 2000-10-30 14:49:26 +00:00
i4b_drn_ngo.c Remove unused #include statements 2000-10-30 14:49:26 +00:00
i4b_dynalink.c Remove unused #include statements 2000-10-30 14:49:26 +00:00
i4b_elsa_pcc16.c Remove unused #include statements 2000-10-30 14:49:26 +00:00
i4b_elsa_qs1i.c Remove unused #include statements 2000-10-30 14:49:26 +00:00
i4b_elsa_qs1p.c Remove unused #include statements 2000-10-30 14:49:26 +00:00
i4b_hscx.c Lock down the network interface queues. The queue mutex must be obtained 2000-11-25 07:35:38 +00:00
i4b_hscx.h
i4b_ipac.h
i4b_isac.c Remove unused #include statements 2000-10-30 14:49:26 +00:00
i4b_isac.h
i4b_isic_ext.h
i4b_isic_isa.c Remove unused #include statements 2000-10-30 14:49:26 +00:00
i4b_isic_pnp.c Remove unneeded #include <machine/clock.h> 2000-10-15 14:19:01 +00:00
i4b_isic.c Remove unneeded #include <machine/clock.h> 2000-10-15 14:19:01 +00:00
i4b_isic.h
i4b_itk_ix1.c Remove unused #include statements 2000-10-30 14:49:26 +00:00
i4b_l1.c Remove unused #include statements 2000-10-30 14:49:26 +00:00
i4b_l1fsm.c Remove unused #include statements 2000-10-30 14:49:26 +00:00
i4b_siemens_isurf.c Remove unused #include statements 2000-10-30 14:49:26 +00:00
i4b_sws.c Remove unused #include statements 2000-10-30 14:49:26 +00:00
i4b_tel_s08.c Remove unused #include statements 2000-10-30 14:49:26 +00:00
i4b_tel_s016.c Remove unused #include statements 2000-10-30 14:49:26 +00:00
i4b_tel_s0163.c Remove unused #include statements 2000-10-30 14:49:26 +00:00
i4b_usr_sti.c Remove unused #include statements 2000-10-30 14:49:26 +00:00