Subject: Re: [PATCH] myr10ge: again fix lro_gen_skb() alignment

From: Andrew Gallatin <[email-masked]>
Date: Wed, 15 Apr 2009 09:01:47 -0400

David Miller wrote:
> From: Brice Goglin <[email-masked]>
>> Is there a good summary somewhere of why GRO is better,
> 
> Transparent forwarding/bridging support, easier driver port.
> 
>> and how to
>> actually convert drivers?
> 
> Step 1: Remove all of your LRO support code, every last line
> Step 2: netif_receive_skb() --> napi_gro_receive()
>         vlan_hwaccel_rx() --> vlan_gro_receive()
> 
> It couldn't be any easier.
> 
> And it would also behoove you to look at the commits that converted or
> added GRO support to other drivers.  That's how I learned it :-)

Unfortunately, it doesn't appear that GRO is able to handle frags
(like lro_receive_frags()), so I anticipate its overhead would
be much higher than LRO for us, due to extra memory allocation
and freeing overheads.   I'll try to find the time to convert
the driver and run some quick tests to confirm.

However, since LRO is optional, it would make sense to
convert the non-LRO code path at the very least.

Drew