Subject: Re: [PATCH net-next 0/4] net: cleanup for UDP tunnel's GRO

From: Shmulik Ladkani <[email-masked]>
Date: Fri, 8 Jul 2016 23:17:34 +0300

On Fri, 8 Jul 2016 09:21:40 -0700 Alexander Duyck <[email-masked]> wrote:
> On Thu, Jul 7, 2016 at 8:58 AM, Paolo Abeni <[email-masked]> 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