freebsd-skq/sys/netinet
jch 0e426a7bb8 MFC r264321, r264342, r264351, r264356, r273850, r274629:
Currently, the TCP slow timer can starve TCP input processing while it
walks the list of connections in TIME_WAIT closing expired connections
due to contention on the global TCP pcbinfo lock.

To remediate, introduce a new global lock to protect the list of
connections in TIME_WAIT.  Only acquire the TCP pcbinfo lock when
closing an expired connection.  This limits the window of time when
TCP input processing is stopped to the amount of time needed to close
a single connection.

Approved by:    jhb (mentor)
2014-12-02 11:47:26 +00:00
..
cc MFC r273733, r273740 and r273773: 2014-10-30 08:04:48 +00:00
khelp The TCP PAWS fix for kernels with fast tick rates (r231767) changed the TCP 2012-08-17 01:49:51 +00:00
libalias In m_megapullup() instead of reserving some space at the end of packet, 2013-03-17 07:37:10 +00:00
accf_data.c
accf_dns.c
accf_http.c
cc.h
icmp6.h Migrate structs in6_ifstat and icmp6_ifstat to PCPU counters. 2013-07-09 09:59:46 +00:00
icmp_var.h Remove most of the remaining sysctl name list macros. They were only 2013-08-26 18:16:05 +00:00
if_atm.c Add const qualifier to the dst parameter of the ifnet if_output method. 2013-04-26 12:50:32 +00:00
if_atm.h Add const qualifier to the dst parameter of the ifnet if_output method. 2013-04-26 12:50:32 +00:00
if_ether.c MFC r263779 2014-06-06 17:42:55 +00:00
if_ether.h Add const qualifier to the dst parameter of the ifnet if_output method. 2013-04-26 12:50:32 +00:00
igmp_var.h Remove most of the remaining sysctl name list macros. They were only 2013-08-26 18:16:05 +00:00
igmp.c Restructure the mbuf pkthdr to make it fit for upcoming capabilities and 2013-08-24 19:51:18 +00:00
igmp.h
in_cksum.c nobody uses this file except the userspace ipfw code, but the cast 2012-07-31 08:04:49 +00:00
in_debug.c
in_gif.c MFC r269054: 2014-10-09 23:29:44 +00:00
in_gif.h
in_kdtrace.c MFC r258622: dtrace sdt: remove the ugly sname parameter of SDT_PROBE_DEFINE 2014-01-17 10:58:59 +00:00
in_kdtrace.h MFC r258622: dtrace sdt: remove the ugly sname parameter of SDT_PROBE_DEFINE 2014-01-17 10:58:59 +00:00
in_mcast.c MFC 260796 2014-02-03 03:31:35 +00:00
in_pcb.c MFC r264879 2014-05-26 22:54:15 +00:00
in_pcb.h MFC r264879 2014-05-26 22:54:15 +00:00
in_pcbgroup.c
in_proto.c MFC r264212,r264213,r264248,r265776,r265811,r265909: 2014-05-13 06:05:53 +00:00
in_rmx.c Merge r262763, r262767, r262771, r262806 from head: 2014-03-21 15:15:30 +00:00
in_systm.h
in_var.h Back out r249318, r249320 and r249327 due to a heisenbug most 2013-05-06 16:42:18 +00:00
in.c MFC changes related to PR kern/189089. Unlike CURRENT, stable/10 does not 2014-06-06 22:14:25 +00:00
in.h MFC r266842: netinet/in.h: Expose htonl(), htons(), ntohl() and ntohs() in 2014-10-29 23:10:48 +00:00
ip6.h Use IP6STAT_INC/IP6STAT_DEC macros to update ip6 stats. 2013-04-09 07:11:22 +00:00
ip_carp.c Merge r262341: 2014-04-04 10:33:59 +00:00
ip_carp.h Migrate struct carpstats to PCPU counters. 2013-07-09 10:02:51 +00:00
ip_divert.c Switch the entire IPv4 stack to keep the IP packet header 2012-10-22 21:09:03 +00:00
ip_divert.h
ip_dummynet.h s/lenght/length/ in comments 2012-08-07 07:52:25 +00:00
ip_ecn.c
ip_ecn.h
ip_encap.c
ip_encap.h
ip_fastfwd.c MFC r271545, 271610: 2014-10-09 23:45:26 +00:00
ip_fw.h Add ipfw support for setting/matching DiffServ codepoints (DSCP). 2013-03-20 10:35:33 +00:00
ip_gre.c MFC r272770: 2014-10-30 13:53:57 +00:00
ip_gre.h
ip_icmp.c MFC r263966: 2014-04-07 12:50:08 +00:00
ip_icmp.h
ip_id.c Back out r249318, r249320 and r249327 due to a heisenbug most 2013-05-06 16:42:18 +00:00
ip_input.c MFC r265942: 2014-05-16 05:05:53 +00:00
ip_ipsec.c Merge r262763, r262767, r262771, r262806 from head: 2014-03-21 15:15:30 +00:00
ip_ipsec.h
ip_mroute.c Merge 261024: fix PIM input regression. 2014-01-27 09:33:30 +00:00
ip_mroute.h Migrate structs arpstat, icmpstat, mrtstat, pimstat and udpstat to PCPU 2013-07-09 09:50:15 +00:00
ip_options.c MFC r271628: 2014-10-09 23:46:17 +00:00
ip_options.h MFC r271545, 271610: 2014-10-09 23:45:26 +00:00
ip_output.c MFC r268450 (by glebius). The leak affects stable/10 too. 2014-07-21 20:38:21 +00:00
ip_var.h Merge r263091: fix mbuf flags clash that lead to failure of operation 2014-03-18 16:56:05 +00:00
ip.h
pim_var.h Remove most of the remaining sysctl name list macros. They were only 2013-08-26 18:16:05 +00:00
pim.h
raw_ip.c MFC r264879 2014-05-26 22:54:15 +00:00
sctp_asconf.c MFC r270673: 2014-09-18 08:58:22 +00:00
sctp_asconf.h Pass the src and dst address of a received packet explicitly around. 2012-06-28 16:01:08 +00:00
sctp_auth.c MFC r271643: 2014-09-18 09:49:49 +00:00
sctp_auth.h MFC r271643: 2014-09-18 09:49:49 +00:00
sctp_bsd_addr.c MFC r258574: 2013-12-03 20:55:37 +00:00
sctp_bsd_addr.h Do packet logging in a consistent way. 2012-06-24 21:25:54 +00:00
sctp_cc_functions.c MFC r271643: 2014-09-18 09:49:49 +00:00
sctp_constants.h MFC r270673: 2014-09-18 08:58:22 +00:00
sctp_crc32.c
sctp_crc32.h
sctp_dtrace_declare.h
sctp_dtrace_define.h MFC r258622: dtrace sdt: remove the ugly sname parameter of SDT_PROBE_DEFINE 2014-01-17 10:58:59 +00:00
sctp_header.h MFC 273168: 2014-10-19 11:31:23 +00:00
sctp_indata.c MFC r269448: 2014-08-22 20:01:35 +00:00
sctp_indata.h Code cleanups. 2013-07-03 18:48:43 +00:00
sctp_input.c MFC 273168: 2014-10-19 11:31:23 +00:00
sctp_input.h MFC 273168: 2014-10-19 11:31:23 +00:00
sctp_lock_bsd.h
sctp_os_bsd.h MFC r271643: 2014-09-18 09:49:49 +00:00
sctp_os.h
sctp_output.c MFC r272841: 2014-10-12 17:45:22 +00:00
sctp_output.h MFC r272751: 2014-10-12 17:42:32 +00:00
sctp_pcb.c MFC r271643: 2014-09-18 09:49:49 +00:00
sctp_pcb.h MFC r269858: 2014-08-22 20:22:12 +00:00
sctp_peeloff.c MFC r269858: 2014-08-22 20:22:12 +00:00
sctp_peeloff.h Remove unused function. 2012-11-25 14:25:08 +00:00
sctp_ss_functions.c
sctp_structs.h MFC r271643: 2014-09-18 09:49:49 +00:00
sctp_sysctl.c MFC r273733, r273740 and r273773: 2014-10-30 08:04:48 +00:00
sctp_sysctl.h MFC r270673: 2014-09-18 08:58:22 +00:00
sctp_timer.c MFC r269448: 2014-08-22 20:01:35 +00:00
sctp_timer.h
sctp_uio.h MFC r269945: 2014-08-22 20:26:20 +00:00
sctp_usrreq.c MFC r272750: 2014-10-12 17:39:37 +00:00
sctp_var.h MFC r268537: 2014-08-22 19:43:27 +00:00
sctp.h MFC r269945: 2014-08-22 20:26:20 +00:00
sctputil.c MFC r271643: 2014-09-18 09:49:49 +00:00
sctputil.h MFC r269376: 2014-08-22 19:49:43 +00:00
siftr.c MFC r273733, r273740 and r273773: 2014-10-30 08:04:48 +00:00
tcp_debug.c Switch the entire IPv4 stack to keep the IP packet header 2012-10-22 21:09:03 +00:00
tcp_debug.h
tcp_fsm.h
tcp_hostcache.c - Update cachelimit after hashsize and bucketlimit were set. 2012-10-19 14:00:03 +00:00
tcp_hostcache.h
tcp_input.c MFC r271946 and r272595: 2014-11-03 12:38:29 +00:00
tcp_lro.c Merge r254336 from user/np/cxl_tuning. 2013-08-28 23:00:34 +00:00
tcp_lro.h Merge r254336 from user/np/cxl_tuning. 2013-08-28 23:00:34 +00:00
tcp_offload.c - Updated TOE support in the kernel. 2012-06-19 07:34:13 +00:00
tcp_offload.h - Updated TOE support in the kernel. 2012-06-19 07:34:13 +00:00
tcp_output.c MFC r274376: 2014-11-19 09:03:12 +00:00
tcp_reass.c MFC r263710, r273377, r273378, r273423 and r273455: 2014-10-27 14:38:00 +00:00
tcp_sack.c
tcp_seq.h
tcp_subr.c MFC r271946 and r272595: 2014-11-03 12:38:29 +00:00
tcp_syncache.c MFC r266619: 2014-08-16 14:03:00 +00:00
tcp_syncache.h Introduce spares in the TCP syncache and timewait structures 2013-09-21 10:01:51 +00:00
tcp_timer.c MFC r264321, r264342, r264351, r264356, r273850, r274629: 2014-12-02 11:47:26 +00:00
tcp_timer.h MFC r264321, r264342, r264351, r264356, r273850, r274629: 2014-12-02 11:47:26 +00:00
tcp_timewait.c MFC r264321, r264342, r264351, r264356, r273850, r274629: 2014-12-02 11:47:26 +00:00
tcp_usrreq.c MFC r264321, r264342, r264351, r264356, r273850, r274629: 2014-12-02 11:47:26 +00:00
tcp_var.h MFC r264321, r264342, r264351, r264356, r273850, r274629: 2014-12-02 11:47:26 +00:00
tcp.h Add placeholder constants to reserve a portion of the socket option 2013-02-01 15:32:20 +00:00
tcpip.h
toecore.c Teach toe_l2_resolve to resolve IPv6 destinations too. 2013-01-26 00:57:29 +00:00
toecore.h Correctly handle the case where an inp has already been dropped by the time 2012-08-21 18:09:33 +00:00
udp_usrreq.c MFC r272844: 2014-11-08 02:53:55 +00:00
udp_var.h MFC r264212,r264213,r264248,r265776,r265811,r265909: 2014-05-13 06:05:53 +00:00
udp.h Add placeholder constants to reserve a portion of the socket option 2013-02-01 15:32:20 +00:00
udplite.h MFC r264212,r264213,r264248,r265776,r265811,r265909: 2014-05-13 06:05:53 +00:00