From: Paolo Abeni Date: Tue, 18 Mar 2025 10:40:33 +0000 (+0100) Subject: Merge branch 'udp_tunnel-gro-optimizations' X-Git-Tag: v6.15-rc1~160^2~91 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=aedfbe251e1c56034cb6ffd87eabe5895b31ae5d;p=thirdparty%2Fkernel%2Flinux.git Merge branch 'udp_tunnel-gro-optimizations' Paolo Abeni says: ==================== udp_tunnel: GRO optimizations The UDP tunnel GRO stage is source of measurable overhead for workload based on UDP-encapsulated traffic: each incoming packets requires a full UDP socket lookup and an indirect call. In the most common setups a single UDP tunnel device is used. In such case we can optimize both the lookup and the indirect call. Patch 1 tracks per netns the active UDP tunnels and replaces the socket lookup with a single destination port comparison when possible. Patch 2 tracks the different types of UDP tunnels and replaces the indirect call with a static one when there is a single UDP tunnel type active. I measure ~5% performance improvement in TCP over UDP tunnel stream tests on top of this series. v3: https://lore.kernel.org/netdev/cover.1741632298.git.pabeni@redhat.com/ v2: https://lore.kernel.org/netdev/cover.1741338765.git.pabeni@redhat.com/ v1: https://lore.kernel.org/netdev/cover.1741275846.git.pabeni@redhat.com/ ==================== Link: https://patch.msgid.link/cover.1741718157.git.pabeni@redhat.com Signed-off-by: Paolo Abeni --- aedfbe251e1c56034cb6ffd87eabe5895b31ae5d