Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 30 Jun 2008 16:04:26 -0700
From:      Andrew Thompson <thompsa@FreeBSD.org>
To:        Pyun YongHyeon <pyunyh@gmail.com>
Cc:        freebsd-net@freebsd.org, Stefan Lambrev <stefan.lambrev@moneybookers.com>
Subject:   Re: if_bridge turns off checksum offload of members?
Message-ID:  <20080630230426.GI60479@citylink.fud.org.nz>
In-Reply-To: <20080630101629.GD79537@cdnetworks.co.kr>
References:  <4868A34C.6030304@moneybookers.com> <20080630101629.GD79537@cdnetworks.co.kr>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Jun 30, 2008 at 07:16:29PM +0900, Pyun YongHyeon wrote:
> On Mon, Jun 30, 2008 at 12:11:40PM +0300, Stefan Lambrev wrote:
>  > Greetings,
>  > 
>  > I just noticed, that when I add em network card to bridge the checksum 
>  > offload is turned off.
>  > I even put in my rc.conf:
>  > ifconfig_em0="rxcsum up"
>  > ifconfig_em1="rxcsum up"
>  > but after reboot both em0 and em1 have this feature disabled.
>  > 
>  > Is this expected behavior? Should I care about csum in bridge mode?
>  > I noticed that enabling checksum offload manually improve things little btw.
>  > 
> 
> AFAIK this is intended one, bridge(4) turns off Tx side checksum
> offload by default. I think disabling Tx checksum offload is
> required as not all members of a bridge may be able to do checksum
> offload. The same is true for TSO but it seems that bridge(4)
> doesn't disable it.

It should be added.

> If all members of bridge have the same hardware capability I think
> bridge(4) may not need to disable Tx side hardware assistance. I
> guess bridge(4) can scan every interface capabilities in a member
> and can decide what hardware assistance can be activated instead of
> blindly turning off Tx side hardware assistance.

Yes, it could me smarter in this regard. The other thing to note is that
unless you are manipulating the packets as they pass the bridge the
checksums are unaffected and do not get recalculated anyway.


Andrew



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080630230426.GI60479>