Florian Westphal
5719b296fb
inet: frag: don't wait for timer deletion when evicting
...
Frank reports 'NMI watchdog: BUG: soft lockup' errors when
load is high. Instead of (potentially) unbounded restarts of the
eviction process, just skip to the next entry.
One caveat is that, when a netns is exiting, a timer may still be running
by the time inet_evict_bucket returns.
We use the frag memory accounting to wait for outstanding timers,
so that when we free the percpu counter we can be sure no running
timer will trip over it.
Reported-and-tested-by: Frank Schreuder <fschreuder@transip.nl>
Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
2015-07-26 21:00:14 -07:00
..
netfilter
netfilter: arptables: use percpu jumpstack
2015-07-02 17:58:59 +02:00
af_inet.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2015-06-24 02:58:51 -07:00
ah4.c
arp.c
netfilter: Pass socket pointer down through okfn().
2015-04-07 15:25:55 -04:00
cipso_ipv4.c
ipv4: coding style: comparison for inequality with NULL
2015-04-03 12:11:15 -04:00
datagram.c
ipv6: lock socket in ip6_datagram_connect()
2015-07-15 17:25:51 -07:00
devinet.c
ipv4: add support for linkdown sysctl to netconf
2015-07-08 23:34:53 -07:00
esp4.c
esp4: Switch to new AEAD interface
2015-05-28 11:23:20 +08:00
fib_frontend.c
net: ipv4 sysctl option to ignore routes when nexthop link is down
2015-06-24 02:15:54 -07:00
fib_lookup.h
ipv4: consider TOS in fib_select_default
2015-07-24 22:46:11 -07:00
fib_rules.c
net: ipv4 sysctl option to ignore routes when nexthop link is down
2015-06-24 02:15:54 -07:00
fib_semantics.c
ipv4: consider TOS in fib_select_default
2015-07-24 22:46:11 -07:00
fib_trie.c
ipv4: consider TOS in fib_select_default
2015-07-24 22:46:11 -07:00
fou.c
fou: avoid missing unlock in failure path
2015-04-16 12:11:19 -04:00
geneve_core.c
geneve_core: identify as driver library in modules description
2015-05-13 15:59:13 -04:00
gre_demux.c
gre_offload.c
ipv4: coding style: comparison for inequality with NULL
2015-04-03 12:11:15 -04:00
icmp.c
ipv4: coding style: comparison for equality with NULL
2015-04-03 12:11:15 -04:00
igmp.c
net: Export IGMP/MLD message validation code
2015-05-04 14:49:23 -04:00
inet_connection_sock.c
tcp: improve REUSEADDR/NOREUSEADDR cohabitation
2015-05-21 18:55:32 -04:00
inet_diag.c
net: inet_diag: always export IPV6_V6ONLY sockopt for listening sockets
2015-07-10 23:25:24 -07:00
inet_fragment.c
inet: frag: don't wait for timer deletion when evicting
2015-07-26 21:00:14 -07:00
inet_hashtables.c
tcp: suppress a division by zero warning
2015-07-21 22:13:13 -07:00
inet_lro.c
inet_timewait_sock.c
tcp/dccp: tw_timer_handler() is static
2015-05-13 15:21:33 -04:00
inetpeer.c
ip_forward.c
ip: reject too-big defragmented DF-skb when forwarding
2015-05-25 00:08:48 -04:00
ip_fragment.c
inet: frag: change *_frag_mem_limit functions to take netns_frags as argument
2015-07-26 21:00:14 -07:00
ip_gre.c
ipv4: coding style: comparison for equality with NULL
2015-04-03 12:11:15 -04:00
ip_input.c
netfilter: Pass socket pointer down through okfn().
2015-04-07 15:25:55 -04:00
ip_options.c
ipv4: coding style: comparison for inequality with NULL
2015-04-03 12:11:15 -04:00
ip_output.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next
2015-06-15 14:30:32 -07:00
ip_sockglue.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2015-06-24 02:58:51 -07:00
ip_tunnel.c
ip_tunnel: fix ipv4 pmtu check to honor inner ip header df
2015-07-08 16:03:09 -07:00
ip_tunnel_core.c
ip_tunnel: Report Rx dropped in ip_tunnel_get_stats64
2015-05-14 22:30:54 -04:00
ip_vti.c
ip_vti/ip6_vti: Preserve skb->mark after rcv_cb call
2015-05-28 06:23:32 +02:00
ipcomp.c
ipv4: coding style: comparison for equality with NULL
2015-04-03 12:11:15 -04:00
ipconfig.c
ipv4: coding style: comparison for equality with NULL
2015-04-03 12:11:15 -04:00
ipip.c
ipip: fix one sparse error
2015-05-17 13:08:29 -04:00
ipmr.c
netfilter: Pass socket pointer down through okfn().
2015-04-07 15:25:55 -04:00
Kconfig
tcp: add CDG congestion control
2015-06-11 00:09:12 -07:00
Makefile
tcp: add CDG congestion control
2015-06-11 00:09:12 -07:00
netfilter.c
netfilter: don't use module_init/exit in core IPV4 code
2015-06-16 14:12:34 -04:00
ping.c
ipv4: Missing sk_nulls_node_init() in ping_unhash().
2015-05-01 22:02:47 -04:00
proc.c
tcp: add TCPWinProbe and TCPKeepAlive SNMP counters
2015-05-09 16:42:32 -04:00
protocol.c
raw.c
Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2015-04-13 18:18:05 -04:00
route.c
ipv4: consider TOS in fib_select_default
2015-07-24 22:46:11 -07:00
syncookies.c
tcp: get_cookie_sock() consolidation
2015-06-07 15:19:52 -07:00
sysctl_net_ipv4.c
net: limit tcp/udp rmem/wmem to SOCK_{RCV,SND}BUF_MIN
2015-05-30 17:37:44 -07:00
tcp.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2015-06-24 02:58:51 -07:00
tcp_bic.c
tcp_cdg.c
tcp: cdg: use div_u64()
2015-06-14 12:57:45 -07:00
tcp_cong.c
tcp: fix child sockets to use system default congestion control if not set
2015-05-31 21:49:14 -07:00
tcp_cubic.c
tcp: restore 1.5x per RTT limit to CUBIC cwnd growth in congestion avoidance
2015-03-11 16:51:51 -04:00
tcp_dctcp.c
net: tcp: dctcp_update_alpha() fixes.
2015-06-10 23:28:33 -07:00
tcp_diag.c
sock_diag: implement a get_info handler for inet
2015-06-15 19:49:22 -07:00
tcp_fastopen.c
tcp: Do not call tcp_fastopen_reset_cipher from interrupt context
2015-06-23 02:38:10 -07:00
tcp_highspeed.c
tcp_htcp.c
tcp_hybla.c
tcp_illinois.c
tcp: prepare CC get_info() access from getsockopt()
2015-04-29 17:10:38 -04:00
tcp_input.c
tcp: don't use F-RTO on non-recurring timeouts
2015-07-15 17:17:21 -07:00
tcp_ipv4.c
tcp: remove redundant checks II
2015-06-07 01:55:01 -07:00
tcp_lp.c
tcp_memcontrol.c
tcp_metrics.c
tcp: RFC7413 option support for Fast Open client
2015-04-07 18:36:39 -04:00
tcp_minisocks.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2015-06-01 22:51:30 -07:00
tcp_offload.c
tcp: reserve tcp_skb_mss() to tcp stack
2015-06-11 16:33:10 -07:00
tcp_output.c
tcp: remove obsolete check in tcp_set_skb_tso_segs()
2015-06-11 16:33:11 -07:00
tcp_probe.c
tcp_scalable.c
tcp_timer.c
tcp: introduce tcp_under_memory_pressure()
2015-05-17 22:45:48 -04:00
tcp_vegas.c
tcp: prepare CC get_info() access from getsockopt()
2015-04-29 17:10:38 -04:00
tcp_vegas.h
tcp: prepare CC get_info() access from getsockopt()
2015-04-29 17:10:38 -04:00
tcp_veno.c
tcp_westwood.c
tcp_westwood: fix tcp_westwood_info()
2015-05-05 19:50:09 -04:00
tcp_yeah.c
tunnel4.c
udp.c
ipv4/udp: Verify multicast group is ours in upd_v4_early_demux()
2015-06-04 00:46:26 -07:00
udp_diag.c
sock_diag: specify info_size per inet protocol
2015-06-15 19:49:22 -07:00
udp_impl.h
udp_offload.c
ipv4: coding style: comparison for inequality with NULL
2015-04-03 12:11:15 -04:00
udp_tunnel.c
net: Modify sk_alloc to not reference count the netns of kernel sockets.
2015-05-11 10:50:18 -04:00
udplite.c
xfrm4_input.c
netfilter: Pass socket pointer down through okfn().
2015-04-07 15:25:55 -04:00
xfrm4_mode_beet.c
xfrm4_mode_transport.c
xfrm4_mode_tunnel.c
ipv4: hash net ptr into fragmentation bucket selection
2015-03-25 14:07:04 -04:00
xfrm4_output.c
netfilter: Pass socket pointer down through okfn().
2015-04-07 15:25:55 -04:00
xfrm4_policy.c
ipv4: coding style: comparison for equality with NULL
2015-04-03 12:11:15 -04:00
xfrm4_protocol.c
xfrm4_state.c
xfrm4_tunnel.c