With udp tunnel offload in place, the kernel can do GRO for some udp tunnels at the ingress device level. Currently both the geneve and the vxlan drivers implement an additional GRO aggregation point via gro_cells. The latter takes effect for tunnels using zero checksum udp packets, which are currently explicitly not aggregated by the udp offload layer.
This patch series adapts the udp tunnel offload to process also zero checksum udp packets, if the tunnel's socket allow it. Aggregation, if possible is always performed at the ingress device level. Then the gro_cells hooks, in both vxlan and geneve driver are removed. Paolo Abeni (4): udp_offload: simplify error path udp offload: allow GRO on 0 checksum packets vxlan: remove gro_cell support geneve: remove gro_cell support drivers/net/geneve.c | 12 +----------- drivers/net/vxlan.c | 9 ++------- include/net/vxlan.h | 1 - net/ipv4/udp_offload.c | 12 +++++++----- 4 files changed, 10 insertions(+), 24 deletions(-) -- 1.8.3.1