[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20071130223457.GA25388@gondor.apana.org.au>
Date: Sat, 1 Dec 2007 09:34:57 +1100
From: Herbert Xu <herbert@...dor.apana.org.au>
To: Andrew Gallatin <gallatin@...i.com>
Cc: Roland Dreier <rdreier@...co.com>, davem@...emloft.net,
ossthema@...ibm.com, netdev@...r.kernel.org
Subject: Re: [PATCH]: fix lro_gen_skb() alignment
On Fri, Nov 30, 2007 at 02:35:43PM -0500, Andrew Gallatin wrote:
>
> >Isn't the value of 2 ethernet-specific (to round the 14-byte header up
> >to 16)? Given that the rest of the lro code is fairly careful to
> >calculate mac_hdr_len etc it seems as if it would be cleaner to make
> >this independent of the specific L2 being used.
> >
> >(And I plan on using the LRO module for IP-over-InfiniBand so this is
> >not completely theoretical)
Good point!
We really should rename NET_IP_ALIGN so that both Ethernet and DMA
occur in it somehow :)
> Good point. I tend to think all the world is ethernet.
> Perhaps the better way would be to simply add an alignment pad
> field to lro_mgr? When the driver initializes it, it specifies
> any padding needed. Ethernet drivers would specify 2.
Just pass in the mac_hdr_len, and calculate the padding as
ALIGN(mac_hdr_len, 4) - mac_hdr_len
or even simpler
~(mac_hdr_len - 1) & 3
Bonus points for putting this in a macro alongside NET_IP_ALIGN :)
Cheers,
--
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@...dor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists