Roland Dreier wrote:
 > >> -       skb = netdev_alloc_skb(lro_mgr->dev, hlen);
 > >> +       skb = netdev_alloc_skb(lro_mgr->dev, hlen + NET_IP_ALIGN);
 > > NET_IP_ALIGN should only be used if you're DMAing into the skb head.
 > > Otherwise you should say 2.  It would be nice to have another macro
 > > for that I suppose.
> > It is certainly simple enough to say 2. Thank you for pointing
 > this out.  I have attached a patch to do that..
> > Signed off by: Andrew Gallatin <[EMAIL PROTECTED]>

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.  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.

Is this acceptable?

Drew
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to