if_bridge turns off checksum offload of members?
thompsa at FreeBSD.org
Tue Jul 1 14:04:28 UTC 2008
On Tue, Jul 01, 2008 at 12:51:42PM +0300, Stefan Lambrev wrote:
> May be a stupid questions, but:
> 1) There are zero matches of IFCAP_TOE in kernel sources .. there is not
> support for TOE in 7.0, but may be this is work in progress for 8-current?
Yes, its in current only. Just remove IFCAP_TOE.
> 2) In #define BRIDGE_IFCAPS_MASK (IFCAP_TOE|IFCAP_TSO|IFCAP_TXCSUM) - TOE
> should be repleaced with RXCSUM or just removed?
> 3) Why RX is never checked? In my case this doesn't matter because em turn
> off both TX and RX if only one is disabled, but probably there is a
> that can separate them e.g. RX disabled while TX enabled?
Rx does not matter, whatever isnt offloaded in hardware is just computed
locally such as checking the cksum. Its Tx that messes up the bridge, if
a outgoing packet is generated locally on an interface that has Tx
offloading, it may actaully be sent out a different bridge member that
does not have that capability. This would cause it to be sent with an
invalid checksum for instance.
The bridge used to just disable Tx offloading but this patch you are
testing makes sure each feature is supported by all members.
> 4) I'm not sure why bridge should not work with two interfaces one of which
> support TX and the other does not? At least if I turn on checksum offload
> only on one of the interfaces the bridge is still working ...
> Andrew Thompson wrote:
> - cut -
>> This patch should do that, are you able to test it Stefan?
> P.S. I saw very good results with netisr2 on a kernel from p4 before few
> months .. are there any patches flying around so I can test them with
> 7-STABLE? :)
> Best Wishes,
> Stefan Lambrev
> ICQ# 24134177
More information about the freebsd-net