tech-net archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: tso with vlan


> On Wed, Apr 01, 2009 at 09:52:53PM +1300, Darran Hunt wrote:
>> Hi Thor,
>> good news on the tso counter - it shows that offload was working.
>> Bad news - I added the vlan on top and reran ttcp with tso4 enabled on  
>> the underlying wm and got no movement on the tso counter.  Also I  
>> can't set tso4 on the vlan interface.
> [carboned to tech-net]
> I'm not surprised.  The double-handling of M_CSUM_TSOv4 has to be causing
> this -- unlike plain checksum offload, which is always deferred, as we
> noticed tcp_output doesn't try to defer segmentation unless it thinks it
> will work -- unless the interface capabilities on what it thinks will be
> the output interace say it is supported and enabled.
> I think this is a bug.  I think has_tso should be removed from tcp_output
> and use_tso should default to 1 -- in the specific cases where TSO can't
> be used, tcp_output _already_ explicitly sets use_tso to 0.  Just like
> checksum offload, the software TSO "offload" code (tcp4_segment etc.)
> should catch the M_CSUM_TSOv4 mbufs and do the right thing.
> The thing is, right now I don't think the software segmentation "offload"
> is ever used, or if it is, only for packets that were already in-flight
> through the stack when the interface capabilities were changed with ifconfig
> (I wonder if this can actually happen).  I wonder if it works!

it's actually used eg. when a packet filter redirect packets.
i tested the code when i implemented it.
i left the has_tso check because i saw negative performace effects
when i tested.


> -- 
> Thor Lancelot Simon
> Coyote Point Systems, Inc.                    <>
> Millerton, NY, USA

Home | Main Index | Thread Index | Old Index