Date: Fri, 24 Nov 2000 23:35:39 -0800 (PST) From: Jonathan Lemon <jlemon@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/dev/awi awi.c src/sys/dev/en midway.c src/sys/dev/hea eni_receive.c eni_transmit.c src/sys/dev/hfa fore_receive.c src/sys/dev/iicbus if_ic.c src/sys/dev/lmc if_lmc.c if_lmc_common.c src/sys/dev/pdq pdq_ifsubr.c src/sys/dev/ppbus ... Message-ID: <200011250735.XAA44043@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
jlemon 2000/11/24 23:35:39 PST
Modified files:
sys/dev/awi awi.c
sys/dev/en midway.c
sys/dev/hea eni_receive.c eni_transmit.c
sys/dev/hfa fore_receive.c
sys/dev/iicbus if_ic.c
sys/dev/lmc if_lmc.c if_lmc_common.c
sys/dev/pdq pdq_ifsubr.c
sys/dev/ppbus if_plip.c
sys/dev/usb udbp.c usb_ethersubr.c
sys/i386/isa if_ar.c if_sr.c
sys/i4b/driver i4b_bsdi_ibc.c i4b_ing.c i4b_ipr.c
i4b_isppp.c i4b_ispppsubr.c i4b_rbch.c
i4b_tel.c i4b_trace.c
sys/i4b/layer1/ifpi i4b_ifpi_pci.c
sys/i4b/layer1/ifpnp i4b_ifpnp_avm.c
sys/i4b/layer1/ihfc i4b_ihfc_drv.c i4b_ihfc_l1if.c
sys/i4b/layer1/isic i4b_bchan.c i4b_hscx.c
sys/i4b/layer1/iwic i4b_iwic_bchan.c
sys/i4b/layer2 i4b_l2.c i4b_mbuf.c i4b_util.c
sys/i4b/layer4 i4b_i4bdrv.c
sys/net bridge.c if.c if_atmsubr.c if_ef.c
if_ethersubr.c if_fddisubr.c if_gif.c
if_iso88025subr.c if_loop.c if_ppp.c
if_sl.c if_spppsubr.c if_stf.c if_tun.c
if_var.h if_vlan.c intrq.c
sys/netatalk ddp_usrreq.c
sys/netatm atm_device.c atm_subr.c
sys/netatm/ipatm ipatm_input.c
sys/netinet if_ether.c ip_auth.c ip_input.c
ip_mroute.c
sys/netinet6 ah_input.c esp_input.c ip6_input.c
sys/netipx ipx_input.c ipx_ip.c
sys/netnatm natm_proto.c
sys/netns ns_input.c ns_ip.c
sys/pc98/pc98 olpt.c
sys/pci if_de.c if_wxvar.h
Log:
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.
Revision Changes Path
1.10 +8 -13 src/sys/dev/awi/awi.c
1.27 +14 -14 src/sys/dev/en/midway.c
1.10 +9 -11 src/sys/dev/hea/eni_receive.c
1.11 +7 -7 src/sys/dev/hea/eni_transmit.c
1.11 +3 -5 src/sys/dev/hfa/fore_receive.c
1.10 +3 -8 src/sys/dev/iicbus/if_ic.c
1.6 +15 -10 src/sys/dev/lmc/if_lmc.c
1.3 +3 -3 src/sys/dev/lmc/if_lmc_common.c
1.13 +2 -8 src/sys/dev/pdq/pdq_ifsubr.c
1.22 +11 -15 src/sys/dev/ppbus/if_plip.c
1.7 +11 -14 src/sys/dev/usb/udbp.c
1.9 +4 -14 src/sys/dev/usb/usb_ethersubr.c
1.41 +9 -4 src/sys/i386/isa/if_ar.c
1.38 +9 -4 src/sys/i386/isa/if_sr.c
1.5 +11 -14 src/sys/i4b/driver/i4b_bsdi_ibc.c
1.5 +15 -23 src/sys/i4b/driver/i4b_ing.c
1.11 +14 -38 src/sys/i4b/driver/i4b_ipr.c
1.12 +6 -3 src/sys/i4b/driver/i4b_isppp.c
1.3 +17 -48 src/sys/i4b/driver/i4b_ispppsubr.c
1.15 +12 -33 src/sys/i4b/driver/i4b_rbch.c
1.16 +18 -16 src/sys/i4b/driver/i4b_tel.c
1.13 +13 -6 src/sys/i4b/driver/i4b_trace.c
1.4 +8 -13 src/sys/i4b/layer1/ifpi/i4b_ifpi_pci.c
1.4 +8 -13 src/sys/i4b/layer1/ifpnp/i4b_ifpnp_avm.c
1.6 +7 -4 src/sys/i4b/layer1/ihfc/i4b_ihfc_drv.c
1.5 +3 -3 src/sys/i4b/layer1/ihfc/i4b_ihfc_l1if.c
1.5 +7 -5 src/sys/i4b/layer1/isic/i4b_bchan.c
1.5 +2 -9 src/sys/i4b/layer1/isic/i4b_hscx.c
1.5 +8 -13 src/sys/i4b/layer1/iwic/i4b_iwic_bchan.c
1.12 +3 -2 src/sys/i4b/layer2/i4b_l2.c
1.11 +3 -15 src/sys/i4b/layer2/i4b_mbuf.c
1.12 +2 -2 src/sys/i4b/layer2/i4b_util.c
1.16 +19 -10 src/sys/i4b/layer4/i4b_i4bdrv.c
1.28 +3 -15 src/sys/net/bridge.c
1.95 +11 -2 src/sys/net/if.c
1.13 +4 -19 src/sys/net/if_atmsubr.c
1.8 +4 -16 src/sys/net/if_ef.c
1.84 +8 -32 src/sys/net/if_ethersubr.c
1.46 +4 -26 src/sys/net/if_fddisubr.c
1.7 +5 -13 src/sys/net/if_gif.c
1.14 +6 -27 src/sys/net/if_iso88025subr.c
1.53 +10 -18 src/sys/net/if_loop.c
1.68 +48 -53 src/sys/net/if_ppp.c
1.90 +6 -14 src/sys/net/if_sl.c
1.61 +17 -54 src/sys/net/if_spppsubr.c
1.4 +5 -11 src/sys/net/if_stf.c
1.81 +7 -26 src/sys/net/if_tun.c
1.28 +99 -50 src/sys/net/if_var.h
1.19 +4 -12 src/sys/net/if_vlan.c
1.5 +3 -10 src/sys/net/intrq.c
1.19 +3 -1 src/sys/netatalk/ddp_usrreq.c
1.11 +4 -2 src/sys/netatm/atm_device.c
1.13 +3 -2 src/sys/netatm/atm_subr.c
1.8 +3 -12 src/sys/netatm/ipatm/ipatm_input.c
1.73 +13 -2 src/sys/netinet/if_ether.c
1.20 +3 -11 src/sys/netinet/ip_auth.c
1.149 +3 -5 src/sys/netinet/ip_input.c
1.61 +2 -12 src/sys/netinet/ip_mroute.c
1.6 +5 -12 src/sys/netinet6/ah_input.c
1.6 +5 -12 src/sys/netinet6/esp_input.c
1.19 +2 -1 src/sys/netinet6/ip6_input.c
1.24 +2 -1 src/sys/netipx/ipx_input.c
1.25 +3 -11 src/sys/netipx/ipx_ip.c
1.5 +3 -1 src/sys/netnatm/natm_proto.c
1.14 +2 -1 src/sys/netns/ns_input.c
1.10 +3 -12 src/sys/netns/ns_ip.c
1.13 +9 -15 src/sys/pc98/pc98/olpt.c
1.133 +9 -9 src/sys/pci/if_de.c
1.7 +5 -1 src/sys/pci/if_wxvar.h
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200011250735.XAA44043>
