Ethernet NIC drivers depending unconditionally on INET

Bjoern A. Zeeb bz at FreeBSD.org
Fri Jun 12 17:50:07 UTC 2009


On Fri, 12 Jun 2009, Andrew Gallatin wrote:

Hi,

> Bjoern A. Zeeb wrote:
>
>> if_mxge:
>> ----------------------------------------
>> mxge_rx_csum() has one in_pseudo(). The function and callers
>> already seem to know how do deal with results in case the csum can't
>> be validated. So this should be a simple #ifdef INET wrapping here;
>> side note: the tcpudp_csum variables in the callers are not needed.
>> side note: huge inlining going on there;)
>> mxge_lro_flush() has another call to in_pseudo(). As with if_igb/ixgbe
>
> Thanks for pointing those out.  It will be a few days before
> I've got time to deal with it properly.  If you don't see
> me commit a fix within a week, please remind me.

Well do not rush it; it's been like that for ages; we may first want
to get infrastructure etc. in place to better fix all those maybe?
It's just that it won't be forgotten in 3 months;-)


>> if there is no INET there should be no LRO for now, the capabilities
>> not advertised, etc.  Be prepared in case LRO will arrive for IPv6.
>
> As to LRO & IPV6... I was going to port our LRO for IPv6,
> but discovered the state of IPv6 in FreeBSD is so disgraceful
> that there was no point.  Eg, there is no checksum offload,
> no TSO, etc, for INET6.  Once those things are there, I'll
> be happy to provide LRO for IPv6.

With "port our LRO" you mean the driver parts?  So how much does the
FreeBSD infrastructure for LRO/v4 help and work for you (and the
others)?  Would adding v6 support there help?

I will have to have a look but I can work on those things (propably
post-RC1 or so). Till then a few other things still need my attention.

/bz

-- 
Bjoern A. Zeeb                      The greatest risk is not taking one.


More information about the freebsd-net mailing list