linux_dsm_epyc7002/net/core
Paolo Abeni 605108acfe net: don't keep lonely packets forever in the gro hash
Eric noted that with UDP GRO and NAPI timeout, we could keep a single
UDP packet inside the GRO hash forever, if the related NAPI instance
calls napi_gro_complete() at an higher frequency than the NAPI timeout.
Willem noted that even TCP packets could be trapped there, till the
next retransmission.
This patch tries to address the issue, flushing the old packets -
those with a NAPI_GRO_CB age before the current jiffy - before scheduling
the NAPI timeout. The rationale is that such a timeout should be
well below a jiffy and we are not flushing packets eligible for sane GRO.

v1  -> v2:
 - clarified the commit message and comment

RFC -> v1:
 - added 'Fixes tags', cleaned-up the wording.

Reported-by: Eric Dumazet <eric.dumazet@gmail.com>
Fixes: 3b47d30396 ("net: gro: add a per device gro flush timer")
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Acked-by: Willem de Bruijn <willemb@google.com>
Acked-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2018-11-23 11:18:53 -08:00
..
datagram.c net: udp: fix handling of CHECKSUM_COMPLETE packets 2018-10-24 14:18:16 -07:00
dev_addr_lists.c
dev_ioctl.c
dev.c net: don't keep lonely packets forever in the gro hash 2018-11-23 11:18:53 -08:00
devlink.c
drop_monitor.c
dst_cache.c
dst.c
ethtool.c
failover.c
fib_notifier.c
fib_rules.c
filter.c bpf: fix wrong helper enablement in cgroup local storage 2018-10-26 16:03:30 -07:00
flow_dissector.c flow_dissector: do not dissect l4 ports for fragments 2018-11-09 20:01:21 -08:00
gen_estimator.c
gen_stats.c
gro_cells.c
hwbm.c
link_watch.c
lwt_bpf.c
lwtunnel.c
Makefile
neighbour.c net/neigh: fix NULL deref in pneigh_dump_table() 2018-10-26 16:03:51 -07:00
net_namespace.c
net-procfs.c
net-sysfs.c
net-sysfs.h
net-traces.c
netclassid_cgroup.c cgroup, netclassid: add a preemption point to write_classid 2018-10-23 12:58:17 -07:00
netevent.c
netpoll.c net: core: netpoll: Enable netconsole IPv6 link local address 2018-11-05 17:07:10 -08:00
netprio_cgroup.c
page_pool.c
pktgen.c
ptp_classifier.c
request_sock.c
rtnetlink.c rtnetlink: restore handling of dumpit return value in rtnl_dump_all() 2018-11-05 17:04:54 -08:00
scm.c
secure_seq.c
skbuff.c net: skb_scrub_packet(): Scrub offload_fwd_mark 2018-11-21 15:38:52 -08:00
skmsg.c
sock_diag.c
sock_map.c
sock_reuseport.c
sock.c sock_diag: fix autoloading of the raw_diag module 2018-11-05 17:09:19 -08:00
stream.c
sysctl_net_core.c bpf: add bpf_jit_limit knob to restrict unpriv allocations 2018-10-25 17:11:42 -07:00
timestamping.c
tso.c
utils.c
xdp.c