Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 25 Mar 2003 23:23:21 +0100
From:      Maxime Henrion <mux@freebsd.org>
To:        Mike Silbersack <silby@silby.com>
Cc:        cvs-src@FreeBSD.org
Subject:   Re: cvs commit: src/sys/conf options src/sys/netinet ip_output.c
Message-ID:  <20030325222321.GG57674@elvis.mu.org>
In-Reply-To: <20030325160051.H580@odysseus.silby.com>
References:  <20030325220044.DA39F37B401@hub.freebsd.org> <20030325160051.H580@odysseus.silby.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Mike Silbersack wrote:
> 
> On Tue, 25 Mar 2003, Bill Paul wrote:
> 
> > >
> > > FWIW, the two drivers I tested this with (if_xl and if_sis) both flunk.
> > > if_xl tries to fix the situation, but fails, and if_sis goes totally
> > > weird, eating mbufs and rendering the interface unuseable.
> > >
> > > I'll test more interfaces once I have these two fixed.
> >
> > Just how long did you make the fragment chain in your tests anyway?
> >
> > -Bill
> 
> Well over 63 fragments.
> 
> I'm not sure what the worst case chain that could be created by an
> application is, but it seems wise to make sure the drivers can handle
> whatever you throw at them.
> 
> One of the reasons if_xl fails, even though it tries to recover is
> probably because m_copypacket doesn't copy fragments resident inside mbuf
> clusters, thereby defeating the attempt at defragmentation.  I'm going to
> whip up a m_defragment function we can use in all drivers on long chains
> soon.

I don't get what you're saying there, if_xl doesn't use m_copypacket()
but m_copydata().

Cheers,
Maxime




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