[PATCH v4 net-next 0/2] udp: allow forwarding of plain (non-fraglisted) UDP GRO packets

From: Alexander Lobakin
Date: Fri Jan 22 2021 - 13:44:31 EST


This series allows to form UDP GRO packets in cases without sockets
(for forwarding). To not change the current datapath, this is
performed only when the new corresponding netdev feature is enabled
via Ethtool (and fraglisted GRO is disabled).
Prior to this point, only fraglisted UDP GRO was available. Plain UDP
GRO shows better forwarding performance when a target NIC is capable
of GSO UDP offload.

Since v3 [2]:
- rename introduced netdev feature to reflect that it targets
forwarding and don't touch fraglisted GRO at all (Willem de Bruijn).

Since v2 [1]:
- convert to a series;
- new: add new netdev_feature to explicitly enable/disable UDP GRO
when there is no socket, defaults to off (Paolo Abeni).

Since v1 [0]:
- drop redundant 'if (sk)' check (Alexander Duyck);
- add a ref in the commit message to one more commit that was
an important step for UDP GRO forwarding.

[0] https://lore.kernel.org/netdev/20210112211536.261172-1-alobakin@xxxxx
[1] https://lore.kernel.org/netdev/20210113103232.4761-1-alobakin@xxxxx
[2] https://lore.kernel.org/netdev/20210118193122.87271-1-alobakin@xxxxx

Alexander Lobakin (2):
net: introduce a netdev feature for UDP GRO forwarding
udp: allow forwarding of plain (non-fraglisted) UDP GRO packets

include/linux/netdev_features.h | 4 +++-
net/ethtool/common.c | 1 +
net/ipv4/udp_offload.c | 3 ++-
3 files changed, 6 insertions(+), 2 deletions(-)

--
2.30.0