[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210318184157.700604-1-alobakin@pm.me>
Date: Thu, 18 Mar 2021 18:42:18 +0000
From: Alexander Lobakin <alobakin@...me>
To: "David S. Miller" <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>
Cc: Alexander Lobakin <alobakin@...me>,
Mauro Carvalho Chehab <mchehab+huawei@...nel.org>,
Kirill Tkhai <ktkhai@...tuozzo.com>,
Bartosz Golaszewski <bgolaszewski@...libre.com>,
Leon Romanovsky <leon@...nel.org>,
Eric Dumazet <edumazet@...gle.com>, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: [PATCH net-next 0/4] net: avoid retpoline overhead on VLAN and TEB GRO
dev_gro_receive() uses indirect calls for IP GRO functions, but
it works only for the outermost headers and untagged frames.
Simple VLAN tag before an IP header restores the performance hit.
This simple series straightens the GRO calls for IP headers going
after VLAN tag or inner Ethernet header (GENEVE, NvGRE, VxLAN)
for retpolined kernels.
Alexander Lobakin (4):
gro: make net/gro.h self-contained
gro: add combined call_gro_receive() + INDIRECT_CALL_INET() helper
vlan/8021q: avoid retpoline overhead on GRO
ethernet: avoid retpoline overhead on TEB (GENEVE, NvGRE, VxLAN) GRO
include/net/gro.h | 13 +++++++++++++
net/8021q/vlan_core.c | 10 ++++++++--
net/ethernet/eth.c | 11 ++++++++---
3 files changed, 29 insertions(+), 5 deletions(-)
--
2.31.0
Powered by blists - more mailing lists