From: | Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxxxxx> |
Date: | Mon, 28 Nov 2005 09:13:47 -0800 (PST) |
dillon 2005/11/28 09:13:47 PST DragonFly src repository Modified files: sys/bus/usb usb_ethersubr.c usb_port.h sys/conf files.i386 sys/contrib/ipfilter/netinet ip_fil.c sys/dev/atm/en midway.c sys/dev/netif/an if_an.c if_an_isa.c if_an_pccard.c if_an_pci.c sys/dev/netif/ar if_ar.c sys/dev/netif/aue if_aue.c sys/dev/netif/awi awi.c awivar.h if_awi_pccard.c sys/dev/netif/axe if_axe.c sys/dev/netif/bfe if_bfe.c sys/dev/netif/bge if_bge.c sys/dev/netif/cm if_cm_isa.c smc90cx6.c sys/dev/netif/cs if_cs.c sys/dev/netif/cue if_cue.c sys/dev/netif/cx if_cx.c sys/dev/netif/dc if_dc.c sys/dev/netif/de if_de.c if_devar.h sys/dev/netif/ed if_ed.c if_ed_isa.c if_ed_pccard.c if_ed_pci.c sys/dev/netif/el if_el.c sys/dev/netif/em if_em.c if_em.h sys/dev/netif/ep if_ep.c if_ep_eisa.c if_ep_isa.c if_ep_pccard.c sys/dev/netif/ex if_ex.c if_ex_isa.c if_ex_pccard.c sys/dev/netif/fe if_fe.c if_fe_pccard.c sys/dev/netif/fea if_fea.c sys/dev/netif/fpa if_fpa.c sys/dev/netif/fwe if_fwe.c sys/dev/netif/fxp if_fxp.c sys/dev/netif/gx if_gx.c sys/dev/netif/ic if_ic.c sys/dev/netif/ie if_ie.c sys/dev/netif/kue if_kue.c sys/dev/netif/le if_le.c sys/dev/netif/lge if_lge.c sys/dev/netif/lnc if_lnc.c if_lnc_isa.c if_lnc_pci.c sys/dev/netif/mn if_mn.c sys/dev/netif/my if_my.c if_myreg.h sys/dev/netif/ndis if_ndis.c sys/dev/netif/nge if_nge.c sys/dev/netif/nv if_nv.c if_nvreg.h sys/dev/netif/owi if_owi.c sys/dev/netif/pcn if_pcn.c sys/dev/netif/pdq_layer pdq_ifsubr.c sys/dev/netif/plip if_plip.c sys/dev/netif/ray if_ray.c sys/dev/netif/rdp if_rdp.c sys/dev/netif/re if_re.c sys/dev/netif/rl if_rl.c sys/dev/netif/rue if_rue.c sys/dev/netif/sbni Makefile if_sbni.c if_sbni_pci.c sys/dev/netif/sbsh if_sbsh.c sys/dev/netif/sf if_sf.c sys/dev/netif/sis if_sis.c sys/dev/netif/sk if_sk.c sys/dev/netif/sn if_sn.c sys/dev/netif/sr if_sr.c sys/dev/netif/ste if_ste.c sys/dev/netif/ti if_ti.c sys/dev/netif/tl if_tl.c sys/dev/netif/tx if_tx.c sys/dev/netif/txp if_txp.c sys/dev/netif/vr if_vr.c sys/dev/netif/vx if_vx.c if_vx_eisa.c if_vx_pci.c sys/dev/netif/wb if_wb.c sys/dev/netif/wl if_wl.c sys/dev/netif/xe if_xe.c sys/dev/netif/xl if_xl.c sys/kern kern_poll.c sys/net bpf.c if.c if_arc.h if_arcsubr.c if_atm.h if_atmsubr.c if_ethersubr.c if_fddisubr.c if_iso88025subr.c if_loop.c if_media.c if_var.h ifq_var.h iso88025.h sys/net/altq altq_rmclass.c altq_subr.c sys/net/bridge bridge.c sys/net/disc if_disc.c sys/net/dummynet ip_dummynet.c sys/net/ef if_ef.c sys/net/faith if_faith.c sys/net/gif if_gif.c sys/net/gre if_gre.c sys/net/i4b/driver i4b_ipr.c i4b_isppp.c sys/net/pf if_pflog.c if_pfsync.c pf.c sys/net/ppp if_ppp.c sys/net/sl if_sl.c sys/net/sppp if_spppsubr.c sys/net/stf if_stf.c sys/net/tap if_tap.c sys/net/tun if_tun.c sys/net/vlan if_vlan.c sys/netgraph/eiface ng_eiface.c sys/netgraph/ether ng_ether.c sys/netgraph/fec ng_fec.c sys/netgraph/iface ng_iface.c sys/netinet if_atm.c if_ether.c if_fddi.h in.c in_var.h ip_flow.c ip_output.c sys/netinet6 in6.c ip6_mroute.c nd6.c sys/netproto/802_11 ieee80211.c ieee80211_input.c sys/netproto/atalk aarp.c at_control.c ddp_output.c sys/netproto/atm atm_if.c atm_var.h sys/netproto/ipx ipx.c ipx_ip.c ipx_outputfl.c sys/netproto/natm natm.c sys/netproto/ns ns.c ns_ip.c ns_output.c sys/sys bus.h Removed files: sys/dev/netif/sbni if_sbni_isa.c Log: Make all network interrupt service routines MPSAFE part 1/3. Replace the critical section that was previously used to serialize access with the LWKT serializer. Integrate the serializer into the IFNET structure. Note that kern.intr_mpsafe must be set to 1 for network interrupts to actually run MPSAFE. Also note that any interrupts shared with othre non-MP drivers will cause all drivers on that interrupt to run with the Big Giant Lock. Network interrupt - Each network driver then simply passes that serializer to bus_setup_intr() so only a single serializer is required to process the entire interrupt path. LWKT serialization support is already 100% integrated into the interrupt subsystem so it will already be held as of when the registered interrupt procedure is called. Ioctl and if_* functions - All callers of if_* functions (such as if_start, if_ioctl, etc) now obtain the IFNET serializer before making the call. Thus all of these entry points into the driver will now be serialized. if_input - All code that calls if_input now ensures that the serializer is held. It will either already be held (when called from a driver), or the serializer will be wrapped around the call. When packets are forwarded or bridged between interfaces, the target interface serializer will be dropped temporarily to avoid a deadlock. Device Driver access - dev_* entry points into certain pseudo-network devices now obtain and release the serializer. This had to be done on a device-by-device basis (but there are only a few such devices). Thanks to several people for helping test the patch, in particular Sepherosa Ziehau. Revision Changes Path 1.14 +2 -2 src/sys/bus/usb/usb_ethersubr.c 1.14 +0 -2 src/sys/bus/usb/usb_port.h 1.38 +0 -1 src/sys/conf/files.i386 1.20 +10 -3 src/sys/contrib/ipfilter/netinet/ip_fil.c 1.21 +1 -1 src/sys/dev/atm/en/midway.c 1.34 +7 -26 src/sys/dev/netif/an/if_an.c 1.14 +3 -2 src/sys/dev/netif/an/if_an_isa.c 1.14 +3 -2 src/sys/dev/netif/an/if_an_pccard.c 1.18 +3 -2 src/sys/dev/netif/an/if_an_pci.c 1.18 +17 -31 src/sys/dev/netif/ar/if_ar.c 1.29 +1 -1 src/sys/dev/netif/aue/if_aue.c 1.25 +17 -103 src/sys/dev/netif/awi/awi.c 1.7 +0 -2 src/sys/dev/netif/awi/awivar.h 1.14 +14 -12 src/sys/dev/netif/awi/if_awi_pccard.c 1.19 +12 -75 src/sys/dev/netif/axe/if_axe.c 1.27 +27 -108 src/sys/dev/netif/bfe/if_bfe.c 1.50 +24 -29 src/sys/dev/netif/bge/if_bge.c 1.13 +5 -7 src/sys/dev/netif/cm/if_cm_isa.c 1.20 +6 -27 src/sys/dev/netif/cm/smc90cx6.c 1.23 +9 -28 src/sys/dev/netif/cs/if_cs.c 1.24 +1 -1 src/sys/dev/netif/cue/if_cue.c 1.19 +1 -1 src/sys/dev/netif/cx/if_cx.c 1.47 +21 -36 src/sys/dev/netif/dc/if_dc.c 1.41 +16 -22 src/sys/dev/netif/de/if_de.c 1.14 +4 -2 src/sys/dev/netif/de/if_devar.h 1.28 +6 -5 src/sys/dev/netif/ed/if_ed.c 1.13 +31 -5 src/sys/dev/netif/ed/if_ed_isa.c 1.14 +3 -1 src/sys/dev/netif/ed/if_ed_pccard.c 1.10 +32 -7 src/sys/dev/netif/ed/if_ed_pci.c 1.20 +15 -26 src/sys/dev/netif/el/if_el.c 1.44 +130 -96 src/sys/dev/netif/em/if_em.c 1.13 +0 -1 src/sys/dev/netif/em/if_em.h 1.22 +2 -2 src/sys/dev/netif/ep/if_ep.c 1.11 +4 -2 src/sys/dev/netif/ep/if_ep_eisa.c 1.10 +4 -2 src/sys/dev/netif/ep/if_ep_isa.c 1.9 +4 -2 src/sys/dev/netif/ep/if_ep_pccard.c 1.21 +3 -19 src/sys/dev/netif/ex/if_ex.c 1.11 +4 -3 src/sys/dev/netif/ex/if_ex_isa.c 1.10 +6 -2 src/sys/dev/netif/ex/if_ex_pccard.c 1.23 +12 -22 src/sys/dev/netif/fe/if_fe.c 1.8 +2 -0 src/sys/dev/netif/fe/if_fe_pccard.c 1.10 +10 -3 src/sys/dev/netif/fea/if_fea.c 1.12 +8 -1 src/sys/dev/netif/fpa/if_fpa.c 1.23 +8 -19 src/sys/dev/netif/fwe/if_fwe.c 1.39 +14 -23 src/sys/dev/netif/fxp/if_fxp.c 1.22 +10 -28 src/sys/dev/netif/gx/if_gx.c 1.14 +1 -1 src/sys/dev/netif/ic/if_ic.c 1.26 +13 -46 src/sys/dev/netif/ie/if_ie.c 1.18 +1 -1 src/sys/dev/netif/kue/if_kue.c 1.33 +11 -25 src/sys/dev/netif/le/if_le.c 1.33 +22 -25 src/sys/dev/netif/lge/if_lge.c 1.24 +3 -2 src/sys/dev/netif/lnc/if_lnc.c 1.7 +6 -5 src/sys/dev/netif/lnc/if_lnc_isa.c 1.8 +9 -6 src/sys/dev/netif/lnc/if_lnc_pci.c 1.11 +1 -1 src/sys/dev/netif/mn/if_mn.c 1.23 +10 -8 src/sys/dev/netif/my/if_my.c 1.5 +0 -1 src/sys/dev/netif/my/if_myreg.h 1.11 +30 -22 src/sys/dev/netif/ndis/if_ndis.c 1.34 +18 -29 src/sys/dev/netif/nge/if_nge.c 1.23 +45 -82 src/sys/dev/netif/nv/if_nv.c 1.10 +0 -2 src/sys/dev/netif/nv/if_nvreg.h 1.13 +23 -51 src/sys/dev/netif/owi/if_owi.c 1.26 +17 -27 src/sys/dev/netif/pcn/if_pcn.c 1.14 +2 -2 src/sys/dev/netif/pdq_layer/pdq_ifsubr.c 1.16 +1 -1 src/sys/dev/netif/plip/if_plip.c 1.26 +17 -21 src/sys/dev/netif/ray/if_ray.c 1.21 +6 -2 src/sys/dev/netif/rdp/if_rdp.c 1.19 +24 -37 src/sys/dev/netif/re/if_re.c 1.29 +19 -29 src/sys/dev/netif/rl/if_rl.c 1.5 +1 -1 src/sys/dev/netif/rue/if_rue.c 1.4 +1 -1 src/sys/dev/netif/sbni/Makefile 1.23 +4 -13 src/sys/dev/netif/sbni/if_sbni.c 1.9 +11 -12 src/sys/dev/netif/sbni/if_sbni_pci.c 1.22 +12 -33 src/sys/dev/netif/sbsh/if_sbsh.c 1.25 +16 -20 src/sys/dev/netif/sf/if_sf.c 1.30 +15 -29 src/sys/dev/netif/sis/if_sis.c 1.40 +25 -14 src/sys/dev/netif/sk/if_sk.c 1.24 +13 -37 src/sys/dev/netif/sn/if_sn.c 1.17 +1 -1 src/sys/dev/netif/sr/if_sr.c 1.31 +11 -33 src/sys/dev/netif/ste/if_ste.c 1.38 +11 -17 src/sys/dev/netif/ti/if_ti.c 1.33 +25 -32 src/sys/dev/netif/tl/if_tl.c 1.33 +15 -32 src/sys/dev/netif/tx/if_tx.c 1.33 +16 -19 src/sys/dev/netif/txp/if_txp.c 1.40 +11 -37 src/sys/dev/netif/vr/if_vr.c 1.25 +17 -18 src/sys/dev/netif/vx/if_vx.c 1.14 +4 -2 src/sys/dev/netif/vx/if_vx_eisa.c 1.13 +6 -2 src/sys/dev/netif/vx/if_vx_pci.c 1.33 +15 -10 src/sys/dev/netif/wb/if_wb.c 1.26 +15 -18 src/sys/dev/netif/wl/if_wl.c 1.30 +23 -7 src/sys/dev/netif/xe/if_xe.c 1.42 +30 -42 src/sys/dev/netif/xl/if_xl.c 1.22 +24 -12 src/sys/kern/kern_poll.c 1.29 +8 -2 src/sys/net/bpf.c 1.43 +73 -19 src/sys/net/if.c 1.5 +2 -1 src/sys/net/if_arc.h 1.19 +13 -6 src/sys/net/if_arcsubr.c 1.7 +4 -1 src/sys/net/if_atm.h 1.15 +7 -4 src/sys/net/if_atmsubr.c 1.33 +22 -8 src/sys/net/if_ethersubr.c 1.19 +5 -3 src/sys/net/if_fddisubr.c 1.14 +9 -2 src/sys/net/if_iso88025subr.c 1.19 +6 -1 src/sys/net/if_loop.c 1.8 +4 -2 src/sys/net/if_media.c 1.32 +38 -14 src/sys/net/if_var.h 1.6 +39 -2 src/sys/net/ifq_var.h 1.5 +3 -1 src/sys/net/iso88025.h 1.5 +6 -2 src/sys/net/altq/altq_rmclass.c 1.7 +4 -1 src/sys/net/altq/altq_subr.c 1.19 +2 -0 src/sys/net/bridge/bridge.c 1.8 +1 -1 src/sys/net/disc/if_disc.c 1.14 +4 -2 src/sys/net/dummynet/ip_dummynet.c 1.18 +2 -2 src/sys/net/ef/if_ef.c 1.13 +1 -1 src/sys/net/faith/if_faith.c 1.14 +5 -5 src/sys/net/gif/if_gif.c 1.14 +1 -1 src/sys/net/gre/if_gre.c 1.18 +1 -1 src/sys/net/i4b/driver/i4b_ipr.c 1.15 +1 -1 src/sys/net/i4b/driver/i4b_isppp.c 1.4 +1 -1 src/sys/net/pf/if_pflog.c 1.3 +1 -1 src/sys/net/pf/if_pfsync.c 1.7 +8 -3 src/sys/net/pf/pf.c 1.27 +11 -8 src/sys/net/ppp/if_ppp.c 1.21 +3 -1 src/sys/net/sl/if_sl.c 1.22 +4 -0 src/sys/net/sppp/if_spppsubr.c 1.15 +1 -1 src/sys/net/stf/if_stf.c 1.22 +98 -98 src/sys/net/tap/if_tap.c 1.25 +28 -29 src/sys/net/tun/if_tun.c 1.18 +32 -8 src/sys/net/vlan/if_vlan.c 1.9 +8 -2 src/sys/netgraph/eiface/ng_eiface.c 1.8 +8 -1 src/sys/netgraph/ether/ng_ether.c 1.16 +31 -10 src/sys/netgraph/fec/ng_fec.c 1.12 +1 -1 src/sys/netgraph/iface/ng_iface.c 1.7 +8 -3 src/sys/netinet/if_atm.c 1.28 +4 -0 src/sys/netinet/if_ether.c 1.6 +3 -1 src/sys/netinet/if_fddi.h 1.17 +14 -9 src/sys/netinet/in.c 1.10 +2 -1 src/sys/netinet/in_var.h 1.9 +7 -1 src/sys/netinet/ip_flow.c 1.33 +6 -1 src/sys/netinet/ip_output.c 1.16 +9 -5 src/sys/netinet6/in6.c 1.10 +6 -7 src/sys/netinet6/ip6_mroute.c 1.17 +7 -3 src/sys/netinet6/nd6.c 1.4 +1 -1 src/sys/netproto/802_11/ieee80211.c 1.3 +1 -1 src/sys/netproto/802_11/ieee80211_input.c 1.17 +8 -0 src/sys/netproto/atalk/aarp.c 1.9 +11 -4 src/sys/netproto/atalk/at_control.c 1.8 +6 -2 src/sys/netproto/atalk/ddp_output.c 1.12 +2 -3 src/sys/netproto/atm/atm_if.c 1.10 +3 -1 src/sys/netproto/atm/atm_var.h 1.9 +12 -9 src/sys/netproto/ipx/ipx.c 1.15 +1 -1 src/sys/netproto/ipx/ipx_ip.c 1.7 +4 -0 src/sys/netproto/ipx/ipx_outputfl.c 1.19 +16 -15 src/sys/netproto/natm/natm.c 1.11 +15 -4 src/sys/netproto/ns/ns.c 1.13 +1 -1 src/sys/netproto/ns/ns_ip.c 1.7 +2 -0 src/sys/netproto/ns/ns_output.c 1.19 +2 -0 src/sys/sys/bus.h http://www.dragonflybsd.org/cvsweb/src/sys/bus/usb/usb_ethersubr.c.diff?r1=1.13&r2=1.14&f=u http://www.dragonflybsd.org/cvsweb/src/sys/bus/usb/usb_port.h.diff?r1=1.13&r2=1.14&f=u http://www.dragonflybsd.org/cvsweb/src/sys/conf/files.i386.diff?r1=1.37&r2=1.38&f=u http://www.dragonflybsd.org/cvsweb/src/sys/contrib/ipfilter/netinet/ip_fil.c.diff?r1=1.19&r2=1.20&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/atm/en/midway.c.diff?r1=1.20&r2=1.21&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/an/if_an.c.diff?r1=1.33&r2=1.34&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/an/if_an_isa.c.diff?r1=1.13&r2=1.14&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/an/if_an_pccard.c.diff?r1=1.13&r2=1.14&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/an/if_an_pci.c.diff?r1=1.17&r2=1.18&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/ar/if_ar.c.diff?r1=1.17&r2=1.18&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/aue/if_aue.c.diff?r1=1.28&r2=1.29&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/awi/awi.c.diff?r1=1.24&r2=1.25&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/awi/awivar.h.diff?r1=1.6&r2=1.7&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/awi/if_awi_pccard.c.diff?r1=1.13&r2=1.14&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/axe/if_axe.c.diff?r1=1.18&r2=1.19&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/bfe/if_bfe.c.diff?r1=1.26&r2=1.27&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/bge/if_bge.c.diff?r1=1.49&r2=1.50&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/cm/if_cm_isa.c.diff?r1=1.12&r2=1.13&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/cm/smc90cx6.c.diff?r1=1.19&r2=1.20&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/cs/if_cs.c.diff?r1=1.22&r2=1.23&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/cue/if_cue.c.diff?r1=1.23&r2=1.24&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/cx/if_cx.c.diff?r1=1.18&r2=1.19&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/dc/if_dc.c.diff?r1=1.46&r2=1.47&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/de/if_de.c.diff?r1=1.40&r2=1.41&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/de/if_devar.h.diff?r1=1.13&r2=1.14&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/ed/if_ed.c.diff?r1=1.27&r2=1.28&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/ed/if_ed_isa.c.diff?r1=1.12&r2=1.13&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/ed/if_ed_pccard.c.diff?r1=1.13&r2=1.14&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/ed/if_ed_pci.c.diff?r1=1.9&r2=1.10&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/el/if_el.c.diff?r1=1.19&r2=1.20&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/em/if_em.c.diff?r1=1.43&r2=1.44&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/em/if_em.h.diff?r1=1.12&r2=1.13&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/ep/if_ep.c.diff?r1=1.21&r2=1.22&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/ep/if_ep_eisa.c.diff?r1=1.10&r2=1.11&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/ep/if_ep_isa.c.diff?r1=1.9&r2=1.10&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/ep/if_ep_pccard.c.diff?r1=1.8&r2=1.9&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/ex/if_ex.c.diff?r1=1.20&r2=1.21&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/ex/if_ex_isa.c.diff?r1=1.10&r2=1.11&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/ex/if_ex_pccard.c.diff?r1=1.9&r2=1.10&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/fe/if_fe.c.diff?r1=1.22&r2=1.23&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/fe/if_fe_pccard.c.diff?r1=1.7&r2=1.8&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/fea/if_fea.c.diff?r1=1.9&r2=1.10&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/fpa/if_fpa.c.diff?r1=1.11&r2=1.12&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/fwe/if_fwe.c.diff?r1=1.22&r2=1.23&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/fxp/if_fxp.c.diff?r1=1.38&r2=1.39&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/gx/if_gx.c.diff?r1=1.21&r2=1.22&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/ic/if_ic.c.diff?r1=1.13&r2=1.14&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/ie/if_ie.c.diff?r1=1.25&r2=1.26&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/kue/if_kue.c.diff?r1=1.17&r2=1.18&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/le/if_le.c.diff?r1=1.32&r2=1.33&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/lge/if_lge.c.diff?r1=1.32&r2=1.33&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/lnc/if_lnc.c.diff?r1=1.23&r2=1.24&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/lnc/if_lnc_isa.c.diff?r1=1.6&r2=1.7&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/lnc/if_lnc_pci.c.diff?r1=1.7&r2=1.8&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/mn/if_mn.c.diff?r1=1.10&r2=1.11&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/my/if_my.c.diff?r1=1.22&r2=1.23&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/my/if_myreg.h.diff?r1=1.4&r2=1.5&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/ndis/if_ndis.c.diff?r1=1.10&r2=1.11&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/nge/if_nge.c.diff?r1=1.33&r2=1.34&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/nv/if_nv.c.diff?r1=1.22&r2=1.23&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/nv/if_nvreg.h.diff?r1=1.9&r2=1.10&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/owi/if_owi.c.diff?r1=1.12&r2=1.13&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/pcn/if_pcn.c.diff?r1=1.25&r2=1.26&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/pdq_layer/pdq_ifsubr.c.diff?r1=1.13&r2=1.14&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/plip/if_plip.c.diff?r1=1.15&r2=1.16&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/ray/if_ray.c.diff?r1=1.25&r2=1.26&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/rdp/if_rdp.c.diff?r1=1.20&r2=1.21&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/re/if_re.c.diff?r1=1.18&r2=1.19&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/rl/if_rl.c.diff?r1=1.28&r2=1.29&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/rue/if_rue.c.diff?r1=1.4&r2=1.5&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/sbni/Makefile.diff?r1=1.3&r2=1.4&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/sbni/if_sbni.c.diff?r1=1.22&r2=1.23&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/sbni/if_sbni_pci.c.diff?r1=1.8&r2=1.9&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/sbsh/if_sbsh.c.diff?r1=1.21&r2=1.22&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/sf/if_sf.c.diff?r1=1.24&r2=1.25&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/sis/if_sis.c.diff?r1=1.29&r2=1.30&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/sk/if_sk.c.diff?r1=1.39&r2=1.40&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/sn/if_sn.c.diff?r1=1.23&r2=1.24&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/sr/if_sr.c.diff?r1=1.16&r2=1.17&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/ste/if_ste.c.diff?r1=1.30&r2=1.31&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/ti/if_ti.c.diff?r1=1.37&r2=1.38&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/tl/if_tl.c.diff?r1=1.32&r2=1.33&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/tx/if_tx.c.diff?r1=1.32&r2=1.33&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/txp/if_txp.c.diff?r1=1.32&r2=1.33&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/vr/if_vr.c.diff?r1=1.39&r2=1.40&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/vx/if_vx.c.diff?r1=1.24&r2=1.25&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/vx/if_vx_eisa.c.diff?r1=1.13&r2=1.14&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/vx/if_vx_pci.c.diff?r1=1.12&r2=1.13&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/wb/if_wb.c.diff?r1=1.32&r2=1.33&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/wl/if_wl.c.diff?r1=1.25&r2=1.26&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/xe/if_xe.c.diff?r1=1.29&r2=1.30&f=u http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/xl/if_xl.c.diff?r1=1.41&r2=1.42&f=u http://www.dragonflybsd.org/cvsweb/src/sys/kern/kern_poll.c.diff?r1=1.21&r2=1.22&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/bpf.c.diff?r1=1.28&r2=1.29&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/if.c.diff?r1=1.42&r2=1.43&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/if_arc.h.diff?r1=1.4&r2=1.5&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/if_arcsubr.c.diff?r1=1.18&r2=1.19&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/if_atm.h.diff?r1=1.6&r2=1.7&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/if_atmsubr.c.diff?r1=1.14&r2=1.15&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/if_ethersubr.c.diff?r1=1.32&r2=1.33&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/if_fddisubr.c.diff?r1=1.18&r2=1.19&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/if_iso88025subr.c.diff?r1=1.13&r2=1.14&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/if_loop.c.diff?r1=1.18&r2=1.19&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/if_media.c.diff?r1=1.7&r2=1.8&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/if_var.h.diff?r1=1.31&r2=1.32&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/ifq_var.h.diff?r1=1.5&r2=1.6&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/iso88025.h.diff?r1=1.4&r2=1.5&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/altq/altq_rmclass.c.diff?r1=1.4&r2=1.5&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/altq/altq_subr.c.diff?r1=1.6&r2=1.7&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/bridge/bridge.c.diff?r1=1.18&r2=1.19&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/disc/if_disc.c.diff?r1=1.7&r2=1.8&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/dummynet/ip_dummynet.c.diff?r1=1.13&r2=1.14&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/ef/if_ef.c.diff?r1=1.17&r2=1.18&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/faith/if_faith.c.diff?r1=1.12&r2=1.13&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/gif/if_gif.c.diff?r1=1.13&r2=1.14&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/gre/if_gre.c.diff?r1=1.13&r2=1.14&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/i4b/driver/i4b_ipr.c.diff?r1=1.17&r2=1.18&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/i4b/driver/i4b_isppp.c.diff?r1=1.14&r2=1.15&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/pf/if_pflog.c.diff?r1=1.3&r2=1.4&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/pf/if_pfsync.c.diff?r1=1.2&r2=1.3&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/pf/pf.c.diff?r1=1.6&r2=1.7&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/ppp/if_ppp.c.diff?r1=1.26&r2=1.27&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/sl/if_sl.c.diff?r1=1.20&r2=1.21&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/sppp/if_spppsubr.c.diff?r1=1.21&r2=1.22&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/stf/if_stf.c.diff?r1=1.14&r2=1.15&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/tap/if_tap.c.diff?r1=1.21&r2=1.22&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/tun/if_tun.c.diff?r1=1.24&r2=1.25&f=u http://www.dragonflybsd.org/cvsweb/src/sys/net/vlan/if_vlan.c.diff?r1=1.17&r2=1.18&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netgraph/eiface/ng_eiface.c.diff?r1=1.8&r2=1.9&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netgraph/ether/ng_ether.c.diff?r1=1.7&r2=1.8&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netgraph/fec/ng_fec.c.diff?r1=1.15&r2=1.16&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netgraph/iface/ng_iface.c.diff?r1=1.11&r2=1.12&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netinet/if_atm.c.diff?r1=1.6&r2=1.7&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netinet/if_ether.c.diff?r1=1.27&r2=1.28&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netinet/if_fddi.h.diff?r1=1.5&r2=1.6&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netinet/in.c.diff?r1=1.16&r2=1.17&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netinet/in_var.h.diff?r1=1.9&r2=1.10&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netinet/ip_flow.c.diff?r1=1.8&r2=1.9&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netinet/ip_output.c.diff?r1=1.32&r2=1.33&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netinet6/in6.c.diff?r1=1.15&r2=1.16&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netinet6/ip6_mroute.c.diff?r1=1.9&r2=1.10&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netinet6/nd6.c.diff?r1=1.16&r2=1.17&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netproto/802_11/ieee80211.c.diff?r1=1.3&r2=1.4&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netproto/802_11/ieee80211_input.c.diff?r1=1.2&r2=1.3&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netproto/atalk/aarp.c.diff?r1=1.16&r2=1.17&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netproto/atalk/at_control.c.diff?r1=1.8&r2=1.9&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netproto/atalk/ddp_output.c.diff?r1=1.7&r2=1.8&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netproto/atm/atm_if.c.diff?r1=1.11&r2=1.12&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netproto/atm/atm_var.h.diff?r1=1.9&r2=1.10&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netproto/ipx/ipx.c.diff?r1=1.8&r2=1.9&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netproto/ipx/ipx_ip.c.diff?r1=1.14&r2=1.15&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netproto/ipx/ipx_outputfl.c.diff?r1=1.6&r2=1.7&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netproto/natm/natm.c.diff?r1=1.18&r2=1.19&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netproto/ns/ns.c.diff?r1=1.10&r2=1.11&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netproto/ns/ns_ip.c.diff?r1=1.12&r2=1.13&f=u http://www.dragonflybsd.org/cvsweb/src/sys/netproto/ns/ns_output.c.diff?r1=1.6&r2=1.7&f=u http://www.dragonflybsd.org/cvsweb/src/sys/sys/bus.h.diff?r1=1.18&r2=1.19&f=u