On Fri, 8 Jul 2016 09:21:40 -0700 Alexander Duyck <alexander.du...@gmail.com> wrote: > On Thu, Jul 7, 2016 at 8:58 AM, Paolo Abeni <pab...@redhat.com> wrote: > > 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. > > I think removing the gro_cells hooks may be taking things one step too far.
+1 > I get that there is an impression that it is redundant but there are a > number of paths that could lead to VXLAN or GENEVE frames being > received that are not aggregated via GRO. There's the case where the vxlan/geneve datagrams get IP fragmented, and IP frags are not GROed. GRO aggregation at the vxlan/geneve level is beneficial for this case. Regards, Shmulik