Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 23 Dec 1999 14:30:47 -0500 (EST)
From:      Bill Paul <wpaul@skynet.ctr.columbia.edu>
To:        dillon@apollo.backplane.com (Matthew Dillon)
Cc:        julian@whistle.com, scottm@CS.UCLA.EDU, jlemon@americantv.com, brad@shub-internet.org, jabley@patho.gen.nz, phk@critter.freebsd.dk, wollman@khavrinen.lcs.mit.edu, current@freebsd.org
Subject:   Re: Woa!  May have found something - 'rl' driver and small packets (was Re: Odd TCP glitches in new currents)
Message-ID:  <199912231930.OAA11526@skynet.ctr.columbia.edu>
In-Reply-To: <199912230641.WAA16876@apollo.backplane.com> from "Matthew Dillon" at Dec 22, 99 10:41:13 pm

next in thread | previous in thread | raw e-mail | index | archive | help
Okay, I patched if_rl.c in -current to fixe the problem demonstrated by 
Matt's linktest program. The bug was actually on the receive side of the 
rl driver, not the transmit side. A packet can wrap from the end of the 
RX buffer back to the beginning, and in some cases these packets would 
get lost due to botched use of m_pullup(). I can run the linktest 
program now without losing any frames.

There's another way around this which is to allocate a whole mbuf
cluster when you know the packet is wrapped and bcopy the data manually
instead of using m_devget(), but I'm not sure I want to waste a whole
cluster just for that case.

-Bill

-- 
=============================================================================
-Bill Paul            (212) 854-6020 | System Manager, Master of Unix-Fu
Work:         wpaul@ctr.columbia.edu | Center for Telecommunications Research
Home:  wpaul@skynet.ctr.columbia.edu | Columbia University, New York City
=============================================================================
 "It is not I who am crazy; it is I who am mad!" - Ren Hoek, "Space Madness"
=============================================================================


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




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