]> 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)
commit7e26fb444144b7ae92c139af3e2f42041926da93
treedd5d9a016906a7f1d0b34c50bd2fbeb942f7ed0e
parentac3c75f5d8aa2828bd89e3e73b71aee4354d24e6
net: gro: do not keep too many GRO packets in napi->rx_list

Commit 18c58bc39cee ("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: 18c58bc39cee ("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