freebsd-nq/sys/net
Guy Helmer 3b3b91e736 Changes to resolve races in bpfread() and catchpacket() that, at worst,
cause kernel panics.

Add a flag to the bpf descriptor to indicate whether the hold buffer
is in use. In bpfread(), set the "hold buffer in use" flag before
dropping the descriptor lock during the call to bpf_uiomove().
Everywhere else the hold buffer is used or changed, wait while
the hold buffer is in use by bpfread(). Add a KASSERT in bpfread()
after re-acquiring the descriptor lock to assist uncovering any
additional hold buffer races.
2012-12-10 16:14:44 +00:00
..
bpf_buffer.c Changes to resolve races in bpfread() and catchpacket() that, at worst, 2012-12-10 16:14:44 +00:00
bpf_buffer.h Call bpf_jitter() before acquiring BPF global lock due to malloc() being used inside bpf_jitter. 2012-05-21 22:19:19 +00:00
bpf_filter.c Clear the filter memory area before using it. Leaving it uninitialized may 2011-07-14 21:06:22 +00:00
bpf_jitter.c
bpf_jitter.h
bpf_zerocopy.c After the PHYS_TO_VM_PAGE() function was de-inlined, the main reason 2012-08-05 14:11:42 +00:00
bpf_zerocopy.h - Fix trivial typo 2012-01-14 17:07:52 +00:00
bpf.c Changes to resolve races in bpfread() and catchpacket() that, at worst, 2012-12-10 16:14:44 +00:00
bpf.h Changes to resolve races in bpfread() and catchpacket() that, at worst, 2012-12-10 16:14:44 +00:00
bpfdesc.h Changes to resolve races in bpfread() and catchpacket() that, at worst, 2012-12-10 16:14:44 +00:00
bridgestp.c Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
bridgestp.h Move the interface media check to a taskqueue, some interfaces (usb) sleep 2012-04-20 10:06:28 +00:00
ethernet.h
fddi.h
firewire.h
flowtable.c - Move jenkins.h to jenkins_hash.c 2012-09-04 12:07:33 +00:00
flowtable.h
ieee8023ad_lacp.c Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
ieee8023ad_lacp.h
if_arc.h
if_arcsubr.c Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
if_arp.h
if_atm.h
if_atmsubr.c Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
if_bridge.c Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
if_bridgevar.h
if_clone.c Fix VIMAGE build. 2012-10-17 21:19:27 +00:00
if_clone.h Make the "struct if_clone" opaque to users of the cloning API. Users 2012-10-16 13:37:54 +00:00
if_dead.c
if_debug.c Add infrastructure to allow all frames/packets received on an interface 2011-07-03 12:22:02 +00:00
if_disc.c Make the "struct if_clone" opaque to users of the cloning API. Users 2012-10-16 13:37:54 +00:00
if_dl.h Use the LLINDEX macro to access the link-level I/F index. This makes 2012-05-19 02:39:43 +00:00
if_edsc.c Make the "struct if_clone" opaque to users of the cloning API. Users 2012-10-16 13:37:54 +00:00
if_ef.c Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
if_enc.c Make the "struct if_clone" opaque to users of the cloning API. Users 2012-10-16 13:37:54 +00:00
if_enc.h
if_epair.c Utilize new macro to initialize if_baudrate(). 2012-10-18 09:57:56 +00:00
if_ethersubr.c Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
if_faith.c Make the "struct if_clone" opaque to users of the cloning API. Users 2012-10-16 13:37:54 +00:00
if_fddisubr.c Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
if_fwsubr.c Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
if_gif.c Make the "struct if_clone" opaque to users of the cloning API. Users 2012-10-16 13:37:54 +00:00
if_gif.h
if_gre.c Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
if_gre.h
if_iso88025subr.c Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
if_lagg.c Fix build. 2012-10-17 08:19:08 +00:00
if_lagg.h Add the ability to set which packet layers are used for the load balance hash 2012-03-06 22:58:13 +00:00
if_llatbl.c Fix races between in_lltable_prefix_free(), lla_lookup(), 2012-08-02 13:57:49 +00:00
if_llatbl.h Fix races between in_lltable_prefix_free(), lla_lookup(), 2012-08-02 13:57:49 +00:00
if_llc.h
if_loop.c Make the "struct if_clone" opaque to users of the cloning API. Users 2012-10-16 13:37:54 +00:00
if_media.c
if_media.h Add media types for 40G media that might be used with FreeBSD. 2012-04-10 13:59:35 +00:00
if_mib.c Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs. 2011-11-07 15:43:11 +00:00
if_mib.h
if_pflog.h o Create directory sys/netpfil, where all packet filters should 2012-09-14 11:51:49 +00:00
if_pfsync.h o Create directory sys/netpfil, where all packet filters should 2012-09-14 11:51:49 +00:00
if_sppp.h
if_spppfr.c Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
if_spppsubr.c Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
if_stf.c Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
if_stf.h
if_tap.c Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
if_tap.h
if_tapvar.h Revert part of an earlier patch attempt that snuck in with r240938. 2012-09-25 23:41:45 +00:00
if_tun.c Mechanically substitute flags from historic mbuf allocator with 2012-12-05 08:04:20 +00:00
if_tun.h
if_types.h A major overhaul of the CARP implementation. The ip_carp.c was started 2011-12-16 12:16:56 +00:00
if_var.h Mechanically remove the last stray remains of spl* calls from net*/*. 2012-10-18 13:57:24 +00:00
if_vlan_var.h Clarify throughout the vlan(4) code the difference between a "tag" (the 2012-01-12 18:39:37 +00:00
if_vlan.c Remove unused and unnecessary CSUM_IP_FRAGS checksumming capability. 2012-11-27 19:31:49 +00:00
if.c Update to previous r241688 to use __func__ instead of spelled out function 2012-10-19 10:07:55 +00:00
if.h provide helper if_initbaudrate() to set if_baudrate_pf and if_baudrate_pf. 2012-10-17 19:24:13 +00:00
iso88025.h
netisr_internal.h
netisr.c Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs. 2011-11-07 15:43:11 +00:00
netisr.h
netmap_user.h Cast through void * to silence compiler warning 2012-10-03 21:41:20 +00:00
netmap.h A bit of cleanup in the names of fields of netmap-related structures. 2012-04-13 16:03:07 +00:00
pf_mtag.h o Create directory sys/netpfil, where all packet filters should 2012-09-14 11:51:49 +00:00
pfil.c Remove the recently added sysctl variable net.pfil.forward. 2012-11-02 01:20:55 +00:00
pfil.h Remove the recently added sysctl variable net.pfil.forward. 2012-11-02 01:20:55 +00:00
pfkeyv2.h
pfvar.h Utilize Jenkins hash with random seed for source nodes storage. 2012-09-20 06:52:05 +00:00
ppp_defs.h
radix_mpath.c When the RADIX_MPATH kernel option is enabled, the RADIX_MPATH code tries 2011-08-25 04:31:20 +00:00
radix_mpath.h
radix.c
radix.h Make KBI changes required for future MFCing of inpcb rtentry / llentry caching. 2011-09-20 20:27:26 +00:00
raw_cb.c Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs. 2011-11-07 15:43:11 +00:00
raw_cb.h Pass the fibnum where we need filtering of the message on the 2011-09-28 13:48:36 +00:00
raw_usrreq.c Pass the fibnum where we need filtering of the message on the 2011-09-28 13:48:36 +00:00
route.c Hide kernel option ROUTETABLES evaluations in the implementation 2012-03-18 11:23:40 +00:00
route.h When ip_output()/ip6_output() is supplied a struct route *ro argument, 2012-07-04 07:37:53 +00:00
rtsock.c - Move definition of V_deembed_scopeid to scope6_var.h. 2012-12-05 19:45:24 +00:00
slcompress.c
slcompress.h
vnet.c Mark MALLOC_DEFINEs static that have no corresponding MALLOC_DECLAREs. 2011-11-07 06:44:47 +00:00
vnet.h
zlib.c Revert previous commit... 2012-10-10 08:36:38 +00:00
zlib.h Change some headers such that lang/gcc* ports no longer patch them. 2012-02-14 12:50:20 +00:00
zutil.h