[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CANn89i+6xRe4V6aDmD-9EM0uD7A87f6rzg3S7Xq6-NaB_Mb4nw@mail.gmail.com>
Date: Tue, 23 Apr 2024 12:15:55 +0200
From: Eric Dumazet <edumazet@...gle.com>
To: Felix Fietkau <nbd@....name>
Cc: netdev@...r.kernel.org, "David S. Miller" <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>, David Ahern <dsahern@...nel.org>,
linux-kernel@...r.kernel.org
Subject: Re: [RFC] net: add TCP fraglist GRO support
On Tue, Apr 23, 2024 at 11:41 AM Felix Fietkau <nbd@....name> wrote:
>
> When forwarding TCP after GRO, software segmentation is very expensive,
> especially when the checksum needs to be recalculated.
> One case where that's currently unavoidable is when routing packets over
> PPPoE. Performance improves significantly when using fraglist GRO
> implemented in the same way as for UDP.
>
> Here's a measurement of running 2 TCP streams through a MediaTek MT7622
> device (2-core Cortex-A53), which runs NAT with flow offload enabled from
> one ethernet port to PPPoE on another ethernet port + cake qdisc set to
> 1Gbps.
>
> rx-gro-list off: 630 Mbit/s, CPU 35% idle
> rx-gro-list on: 770 Mbit/s, CPU 40% idle
Hi Felix
changelog is a bit terse, and patch complex.
Could you elaborate why this issue
seems to be related to a specific driver ?
I think we should push hard to not use frag_list in drivers :/
And GRO itself could avoid building frag_list skbs
in hosts where forwarding is enabled.
(Note that we also can increase MAX_SKB_FRAGS to 45 these days)
Powered by blists - more mailing lists