freebsd-skq/sys/netinet
Mark Johnston 54af3d0dac Fix synchronization of LB group access.
Lookups are protected by an epoch section, so the LB group linkage must
be a CK_LIST rather than a plain LIST.  Furthermore, we were not
deferring LB group frees, so in_pcbremlbgrouphash() could race with
readers and cause a use-after-free.

Reviewed by:	sbruno, Johannes Lundberg <johalun0@gmail.com>
Tested by:	gallatin
Approved by:	re (gjb)
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D17031
2018-09-10 19:00:29 +00:00
..
cc Use the new VNET_DEFINE_STATIC macro when we are defining static VNET 2018-07-24 16:35:52 +00:00
khelp sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
libalias Remove a duplicate check. 2018-07-11 14:54:56 +00:00
netdump UDP: further performance improvements on tx 2018-05-23 21:02:14 +00:00
tcp_stacks This change represents a substantial restructure of the way we 2018-08-20 12:43:18 +00:00
accf_data.c sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
accf_dns.c sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
accf_http.c sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
icmp6.h Correct the comment describing badrs which is bad router solicitiation, 2017-12-29 07:23:18 +00:00
icmp_var.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
if_ether.c Use the new VNET_DEFINE_STATIC macro when we are defining static VNET 2018-07-24 16:35:52 +00:00
if_ether.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
igmp_var.h Separate list manipulation locking from state change in multicast 2018-05-02 19:36:29 +00:00
igmp.c Use the new VNET_DEFINE_STATIC macro when we are defining static VNET 2018-07-24 16:35:52 +00:00
igmp.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
in_cksum.c sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
in_debug.c CK: update consumers to use CK macros across the board 2018-05-24 23:21:23 +00:00
in_fib.c Switch RIB and RADIX_NODE_HEAD lock from rwlock(9) to rmlock(9). 2018-06-16 08:26:23 +00:00
in_fib.h Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
in_gif.c Use the new VNET_DEFINE_STATIC macro when we are defining static VNET 2018-07-24 16:35:52 +00:00
in_jail.c Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
in_kdtrace.c Define sctp probes only when SCTP is configured. 2018-09-06 14:15:03 +00:00
in_kdtrace.h Add support for send, receive and state-change DTrace providers for 2018-08-22 21:23:32 +00:00
in_mcast.c in_mcast: fix copy paste error when clearing flag 2018-08-22 04:09:55 +00:00
in_pcb.c Fix synchronization of LB group access. 2018-09-10 19:00:29 +00:00
in_pcb.h Fix synchronization of LB group access. 2018-09-10 19:00:29 +00:00
in_pcbgroup.c Fix PCBGROUPS build post CK conversion of pcbinfo 2018-06-13 23:19:54 +00:00
in_prot.c Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
in_proto.c Remove empty encap_init() function. 2018-05-29 12:32:08 +00:00
in_rmx.c
in_rss.c
in_rss.h
in_systm.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
in_var.h UDP: further performance improvements on tx 2018-05-23 21:02:14 +00:00
in.c Late style follow up on r312770. 2018-08-15 15:44:30 +00:00
in.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
ip6.h carp: Set DSCP value CS7 2018-07-01 08:37:07 +00:00
ip_carp.c Fix in6_multi double free 2018-08-15 20:23:08 +00:00
ip_carp.h sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
ip_divert.c Use the new VNET_DEFINE_STATIC macro when we are defining static VNET 2018-07-24 16:35:52 +00:00
ip_divert.h sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
ip_dummynet.h sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
ip_ecn.c sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
ip_ecn.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
ip_encap.c epoch(9): allow preemptible epochs to compose 2018-07-04 02:47:16 +00:00
ip_encap.h Rework IP encapsulation handling code. 2018-06-05 20:51:01 +00:00
ip_fastfwd.c Fix "ipfw fwd" to work for incoming IPv4 packets when ip_tryforward() chooses 2018-09-05 13:59:36 +00:00
ip_fw.h Add "record-state", "set-limit" and "defer-action" rule options to ipfw. 2018-07-09 11:35:18 +00:00
ip_gre.c Use the new VNET_DEFINE_STATIC macro when we are defining static VNET 2018-07-24 16:35:52 +00:00
ip_icmp.c icmp_quotelen was accidentially changes in r336676, undo this. 2018-07-24 16:45:01 +00:00
ip_icmp.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
ip_id.c Use the new VNET_DEFINE_STATIC macro when we are defining static VNET 2018-07-24 16:35:52 +00:00
ip_input.c Restore ability to send ICMP and ICMPv6 redirects. 2018-08-14 07:54:14 +00:00
ip_mroute.c Use the new VNET_DEFINE_STATIC macro when we are defining static VNET 2018-07-24 16:35:52 +00:00
ip_mroute.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
ip_options.c Use the new VNET_DEFINE_STATIC macro when we are defining static VNET 2018-07-24 16:35:52 +00:00
ip_options.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
ip_output.c Fix a potential use after free in getsockopt() access to inp_options 2018-07-22 20:02:14 +00:00
ip_reass.c Lower the default limits on the IPv4 reassembly queue. 2018-08-14 17:30:46 +00:00
ip_var.h ip(6)_freemoptions: defer imo destruction to epoch callback task 2018-05-20 00:22:28 +00:00
ip.h carp: Set DSCP value CS7 2018-07-01 08:37:07 +00:00
pim_var.h Rework IP encapsulation handling code. 2018-06-05 20:51:01 +00:00
pim.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
raw_ip.c Removed pointless NULL check 2018-07-10 08:05:32 +00:00
sctp_asconf.c Use the stacb instead of the asoc in state macros. 2018-08-13 13:58:45 +00:00
sctp_asconf.h Whitespace changes due to changes in ident. 2018-07-19 20:16:33 +00:00
sctp_auth.c Whitespace changes due to changes in ident. 2018-07-19 20:16:33 +00:00
sctp_auth.h Whitespace changes due to changes in ident. 2018-07-19 20:16:33 +00:00
sctp_bsd_addr.c Whitespace changes due to changes in ident. 2018-07-19 20:16:33 +00:00
sctp_bsd_addr.h Revert https://svnweb.freebsd.org/changeset/base/336503 2018-07-19 20:11:14 +00:00
sctp_cc_functions.c Whitespace changes due to changes in ident. 2018-07-19 20:16:33 +00:00
sctp_constants.h Refactor the SHUTDOWN_PENDING state handling. 2018-08-21 13:25:32 +00:00
sctp_crc32.c Revert https://svnweb.freebsd.org/changeset/base/336503 2018-07-19 20:11:14 +00:00
sctp_crc32.h When adding support for sending SCTP packets containing an ABORT chunk 2017-12-26 12:35:02 +00:00
sctp_dtrace_declare.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
sctp_dtrace_define.h Add support for send, receive and state-change DTrace providers for 2018-08-22 21:23:32 +00:00
sctp_header.h Whitespace changes due to changes in ident. 2018-07-19 20:16:33 +00:00
sctp_indata.c Refactor the SHUTDOWN_PENDING state handling. 2018-08-21 13:25:32 +00:00
sctp_indata.h Whitespace changes due to changes in ident. 2018-07-19 20:16:33 +00:00
sctp_input.c Add support for send, receive and state-change DTrace providers for 2018-08-22 21:23:32 +00:00
sctp_input.h Whitespace changes due to changes in ident. 2018-07-19 20:16:33 +00:00
sctp_lock_bsd.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
sctp_os_bsd.h Use arc4rand() instead of read_random() in the SCTP and TCP code. 2018-08-23 19:10:45 +00:00
sctp_os.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
sctp_output.c Add support for send, receive and state-change DTrace providers for 2018-08-22 21:23:32 +00:00
sctp_output.h Whitespace changes due to changes in ident. 2018-07-19 20:16:33 +00:00
sctp_pcb.c Refactor the SHUTDOWN_PENDING state handling. 2018-08-21 13:25:32 +00:00
sctp_pcb.h Whitespace changes due to changes in ident. 2018-07-19 20:16:33 +00:00
sctp_peeloff.c Use the stacb instead of the asoc in state macros. 2018-08-13 13:58:45 +00:00
sctp_peeloff.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
sctp_ss_functions.c Revert https://svnweb.freebsd.org/changeset/base/336503 2018-07-19 20:11:14 +00:00
sctp_structs.h Whitespace changes due to changes in ident. 2018-07-19 20:16:33 +00:00
sctp_syscalls.c netinet silence warnings 2018-05-19 05:56:21 +00:00
sctp_sysctl.c Revert https://svnweb.freebsd.org/changeset/base/336503 2018-07-19 20:11:14 +00:00
sctp_sysctl.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
sctp_timer.c Refactor the SHUTDOWN_PENDING state handling. 2018-08-21 13:25:32 +00:00
sctp_timer.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
sctp_uio.h Whitespace changes due to changes in ident. 2018-07-19 20:16:33 +00:00
sctp_usrreq.c Refactor the SHUTDOWN_PENDING state handling. 2018-08-21 13:25:32 +00:00
sctp_var.h Whitespace changes due to changes in ident. 2018-07-19 20:16:33 +00:00
sctp.h Whitespace changes due to changes in ident. 2018-07-19 20:16:33 +00:00
sctputil.c Add support for send, receive and state-change DTrace providers for 2018-08-22 21:23:32 +00:00
sctputil.h Refactor the SHUTDOWN_PENDING state handling. 2018-08-21 13:25:32 +00:00
siftr.c Create a new macro for static DPCPU data. 2018-07-05 17:13:37 +00:00
tcp_debug.c sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
tcp_debug.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
tcp_fastopen.c Use the new VNET_DEFINE_STATIC macro when we are defining static VNET 2018-07-24 16:35:52 +00:00
tcp_fastopen.h Greatly reduce the number of #ifdefs supporting the TCP_RFC7413 kernel option. 2018-02-26 03:03:41 +00:00
tcp_fsm.h Revert r334843, and partially revert r335180. 2018-06-23 06:53:53 +00:00
tcp_hostcache.c Use the new VNET_DEFINE_STATIC macro when we are defining static VNET 2018-07-24 16:35:52 +00:00
tcp_hostcache.h sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
tcp_hpts.c Make tcp_hpts.c compile a LINT kernel with options RSS and PCBGROUPS added by 2018-09-06 16:11:24 +00:00
tcp_hpts.h epoch(9): allow preemptible epochs to compose 2018-07-04 02:47:16 +00:00
tcp_input.c Enabling the IPPROTO_IPV6 level socket option IPV6_USE_MIN_MTU on a TCP 2018-08-21 14:12:30 +00:00
tcp_log_buf.c Clean up some debugging code left in tcp_log_buf.c from r331347. 2018-04-10 15:51:37 +00:00
tcp_log_buf.h This change represents a substantial restructure of the way we 2018-08-20 12:43:18 +00:00
tcp_lro.c Update tcp_lro with tested bugfixes from Netflix and LLNW: 2018-03-09 00:08:43 +00:00
tcp_lro.h sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
tcp_offload.c Revert r334843, and partially revert r335180. 2018-06-23 06:53:53 +00:00
tcp_offload.h Add a hook to allow the toedev handling an offloaded connection to 2018-04-03 01:08:54 +00:00
tcp_output.c Fix some TCP fast open issues. 2018-07-30 20:35:50 +00:00
tcp_pcap.c The TCPPCAP debugging feature caches recently-used mbufs for use in 2016-07-06 16:17:13 +00:00
tcp_pcap.h The TCPPCAP debugging feature caches recently-used mbufs for use in 2016-07-06 16:17:13 +00:00
tcp_reass.c This change represents a substantial restructure of the way we 2018-08-20 12:43:18 +00:00
tcp_sack.c sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
tcp_seq.h r330675 introduced an extra window check in the LRO code to ensure it 2018-04-03 13:54:38 +00:00
tcp_subr.c Use arc4rand() instead of read_random() in the SCTP and TCP code. 2018-08-23 19:10:45 +00:00
tcp_syncache.c Fix the inheritance of IPv6 level socket options on TCP sockets. 2018-08-21 14:07:36 +00:00
tcp_syncache.h When retransmitting TCP SYN-ACK segments with the TCP timestamp option 2018-06-15 12:28:43 +00:00
tcp_timer.c epoch(9): allow preemptible epochs to compose 2018-07-04 02:47:16 +00:00
tcp_timer.h epoch(9): allow preemptible epochs to compose 2018-07-04 02:47:16 +00:00
tcp_timewait.c Send consistent SEG.WIN when using timewait codepath for TCP. 2018-07-30 21:13:42 +00:00
tcp_usrreq.c Fix a shadowed variable warning. 2018-08-24 10:50:19 +00:00
tcp_var.h This change represents a substantial restructure of the way we 2018-08-20 12:43:18 +00:00
tcp.h This commit brings in a new refactored TCP stack called Rack. 2018-06-07 18:18:13 +00:00
tcpip.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
toecore.c Add the ability to look up the 3b PCP of a VLAN interface. Use it in 2018-08-16 23:46:38 +00:00
toecore.h Add a hook to allow the toedev handling an offloaded connection to 2018-04-03 01:08:54 +00:00
udp_usrreq.c Add a dtrace provider for UDP-Lite. 2018-07-31 22:56:03 +00:00
udp_var.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
udp.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
udplite.h Add a dtrace provider for UDP-Lite. 2018-07-31 22:56:03 +00:00