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

Re: memory (mbuf) leak in fxp driver.



Greetings,
   The url you reference was a post by me, and I'm still having the problem.
I had also narrowed it down to the fxp driver after the post, but the lack
of response previously indicated that I wouldn't get much response again.
Anyways, I started looking through the driver to see what I could find, but
it didn't turn out to be much.

I've been meaning to file a proper bug report on this again for a week or
so, but haven't had the chance. If you would like to submit it instead,
please do :)

Note that I still have the problem with 2.9-beta. Also, my problems are with
100mbit interfaces. No 10mbit to be found. All cards on this machine have
forced port speeds and duplexes.

Let me know if you happen to need more details or testing of any sort.

--Doug

on 5/22/01 3:20 PM, Benninghoff, John at JABenninghoff@dainrauscher.com
wrote:

> Hello all,
> 
> I'm fairly certain that I've uncovered a memory leak in the fxp driver, at
> least for 2.8-stable. What I'm seeing is a steadily increasing number of
> mbufs in use, until I get a "mb_map full" kernel error and the network stops
> working.
> 
> At this point, netstat -m shows something like this:
> 
> 18390 mbufs in use:
> 2265 mbufs allocated to data
> 16124 mbufs allocated to packet headers
> 1 mbuf allocated to socket names and addresses
> 8190/8192 mapped pages in use
> 18682 Kbytes allocated to network (99% in use)
> 0 requests for memory denied
> 0 requests for memory delayed
> 1941 calls to protocol drain routines
> 
> As you can see, I've already set NMBCLUSTERS="8192" in my kernel
> configuration. This really only delays the inevitable.
> 
> I searched for similar problems in the mailing list archives, and I noticed
> that someone else was experiencing a similar problem when running a bridge
> using fxp (Intel) NICs...
> http://www.sigmasoft.com/~openbsd/archive/openbsd-tech/200104/msg00024.html
> (note that this appears to be 10 meg, not 100)
> 
> After further testing / experimenting I noticed the following:
> 
> * running tcpdump (as I do) makes it worse, the mbufs fill up much faster.
> I'm doing sniffing on heavily-utilized networks.
> * cards running at 10 meg fill up much faster than cards running at 100 meg
> (not what I would expect)
> * the problem seems to exist in 2.7, 2.8, and 2.9 (beta). I haven't checked
> -current.
> * unplugging the network connection doesn't reduce the mbufs in use.
> * I've seen similar problems reported on NetBSD and FreeBSD, perhaps because
> they all share parent code (?)
> * hard to say for sure, but other drivers, like xl, don't seem to behave the
> same way.
> 
> It really looks like a leak in fxp, but I lack the expertise to find it in
> the source code ...
> 
> Any suggestions ? Should I submit this as a bug report ?
> 
> here are the relevant lines from dmesg:
> fxp0 at pci0 dev 1 function 0 "Intel 82557" rev 0x08: irq 11, address
> 00:b0:d0:e1:0b:68
> inphy0 at fxp0 phy 1: i82555 10/100 media interface, rev. 4
> fxp1 at pci0 dev 2 function 0 "Intel 82557" rev 0x08: irq 10, address
> 00:b0:d0:e1:0b:69
> inphy1 at fxp1 phy 1: i82555 10/100 media interface, rev. 4
> 
> ------------------------------------------
> John A Benninghoff
> mailto:jabenninghoff@dainrauscher.com