From: Paolo Abeni <pab...@redhat.com> Date: Wed, 21 Nov 2018 18:21:35 +0100
> 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.duma...@gmail.com> > Fixes: 3b47d30396ba ("net: gro: add a per device gro flush timer") > Signed-off-by: Paolo Abeni <pab...@redhat.com> Applied and queued up for -stable.