Re: [PATCH] net: veth: do not manipulate GRO when using XDP

From: Jakub Kicinski
Date: Mon Mar 11 2024 - 16:30:18 EST


On Mon, 11 Mar 2024 12:40:15 +0000 Ignat Korchagin wrote:
> Commit d3256efd8e8b ("veth: allow enabling NAPI even without XDP") tried to fix
> the fact that GRO was not possible without XDP, because veth did not use NAPI
> without XDP. However, it also introduced the behaviour that GRO is always
> enabled, when XDP is enabled.
>
> While it might be desired for most cases, it is confusing for the user at best
> as the GRO flag sudddenly changes, when an XDP program is attached. It also

s/ddd/dd/ spellcheck the whole message, pls

> introduces some complexities in state management as was partially addressed in
> commit fe9f801355f0 ("net: veth: clear GRO when clearing XDP even when down").
>
> But the biggest problem is that it is not possible to disable GRO at all, when
> an XDP program is attached, which might be needed for some use cases.
>
> Fix this by not touching the GRO flag on XDP enable/disable as the code already
> supports switching to NAPI if either GRO or XDP is requested.

Sound legit, AFAIU. But please also adjust
tools/testing/selftests/net/veth.sh because it's failing now.