]> git.baikalelectronics.ru Git - kernel.git/commit
net: gro: do not keep too many GRO packets in napi->rx_list
authorEric Dumazet <edumazet@google.com>
Thu, 4 Feb 2021 21:31:46 +0000 (13:31 -0800)
committerJakub Kicinski <kuba@kernel.org>
Sat, 6 Feb 2021 03:28:01 +0000 (19:28 -0800)
commit9dee7b85b76f24fd8578c1f6391e7b2eaee76ded
treedd5d9a016906a7f1d0b34c50bd2fbeb942f7ed0e
parent1d8ea7f5ddf64034dc809087653f46724a6934fa
net: gro: do not keep too many GRO packets in napi->rx_list

Commit f1396692f773 ("net: Fix packet reordering caused by GRO and
listified RX cooperation") had the unfortunate effect of adding
latencies in common workloads.

Before the patch, GRO packets were immediately passed to
upper stacks.

After the patch, we can accumulate quite a lot of GRO
packets (depdending on NAPI budget).

My fix is counting in napi->rx_count number of segments
instead of number of logical packets.

Fixes: f1396692f773 ("net: Fix packet reordering caused by GRO and listified RX cooperation")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Bisected-by: John Sperbeck <jsperbeck@google.com>
Tested-by: Jian Yang <jianyang@google.com>
Cc: Maxim Mikityanskiy <maximmi@mellanox.com>
Reviewed-by: Saeed Mahameed <saeedm@nvidia.com>
Reviewed-by: Edward Cree <ecree.xilinx@gmail.com>
Reviewed-by: Alexander Lobakin <alobakin@pm.me>
Link: https://lore.kernel.org/r/20210204213146.4192368-1-eric.dumazet@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/core/dev.c