Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 18 Jun 2007 14:04:03 +0100
From:      Tom Judge <tom@tomjudge.com>
To:        Andre Oppermann <andre@freebsd.org>
Cc:        pyunyh@gmail.com, src-committers@freebsd.org, cvs-src@freebsd.org, cvs-all@freebsd.org, rwatson@freebsd.org, Pyun YongHyeon <yongari@freebsd.org>
Subject:   Re: cvs commit: src/sys/dev/msk if_msk.c
Message-ID:  <467682C3.4020701@tomjudge.com>
In-Reply-To: <466CFEC1.6080100@freebsd.org>
References:  <200706110155.l5B1t9d9043150@repoman.freebsd.org>	<466CFBE2.1090907@freebsd.org>	<20070611074456.GE39661@cdnetworks.co.kr> <466CFEC1.6080100@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Andre Oppermann wrote:
> Pyun YongHyeon wrote:
>> On Mon, Jun 11, 2007 at 09:38:10AM +0200, Andre Oppermann wrote:
>>  > Pyun YongHyeon wrote:
>>  > >yongari     2007-06-11 01:55:09 UTC
>>  > >
>>  > >  FreeBSD src repository
>>  > >
>>  > >  Modified files:
>>  > >    sys/dev/msk          if_msk.c  > >  Log:
>>  > >  Disable automatic IP ID increment. Due to a hardware bug the 
>> automatic
>>  > >  IP ID increment in TSO case generated corrupted IP packets.
>>  > >  This change brings back TSO capability.
>>  > >   > >  Revision  Changes    Path
>>  > >  1.16      +0 -15     src/sys/dev/msk/if_msk.c
>>  >  > Please add check for the DF (Don't fragment) bit in the IP header.
>>  > Otherwise we may run into trouble when fragmentation happens along
>>  > the path.  We almost always set DF on TCP connections. If it is not
>>  > set please return EMSGSIZE which will cause TSO to be turned off.
>>  >
>> Is there any way to return EMSGSIZE to upper layer?
>> if_start has return type void.
>> Or just dropping the packet if DF bit was not set is enough?
> 
> Dropping the packet is not enough.  I forgot the IF queue which
> separates the downpath from the encap function...  Don't know
> how you can pass up the error.  Robert wanted to change the drivers
> queuing model, that would make it possible.  CC'ed.
> 

Sorry for jumping in here, but could you not pass the message back up by 
dropping the packet and sending a ICMP error back up the stack with the 
Error code set for "Fragmentation needed and DF set" and set the MTU 
hint to the current interface MTU?  Or is this a stupid idea?

Tom



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