Re: Examine route.c! (Was: memory leak detector, 2.0.32, patch)

Daniel Ryde (ryde@tripnet.se)
Wed, 3 Dec 1997 23:18:43 +0100 (CET)


On Thu, 4 Dec 1997, Ingo Molnar wrote:

>
> On Tue, 2 Dec 1997, Daniel Ryde wrote:
>
> > In kernel 2.0.32 I have experienced a memory leak since 2.0.31. Which
> > made me reboot my machines after two days of uptime. I finally found out
> > that it was during backuptime that almost all memory was consumed. This
> > can easely be reproduced by doing:
> > cd /; tar clf - . | nc -w 1 somehost discard &
>
> i have tried this script in various combinations, and route.c:1422 has
> always ~10 allocations here :( Wondering whats the speciality in your
> setup that triggers the bug.

I have a feeling it is timing dependent, since I also have a slightly
faster computer (166Mhz / 100Mhz) which I'm unable to reproduce this on,
using the same config... Hmm, I might even try to slow it down, did'nt
think of that before...

> i have seen this bug once (not on my box), so we definitely have a
> problem, we just have to reproduce it ... does enabling DEBUG_RT in
> route.c show something weird?

Oum, do you mean RT_CACHE_DEBUG in route.h?
Gahh, that will fill my logs pretty fast...

> hm, this is a router setup, will boot into such a kernel, but i dont think
> i can reproduce a complex routing setup ...

No no, it is not used as a complex router. The forwarding is just to get
dial-in ppp connections to work. It is more a terminal server with 24
standard serialports.

> nc isnt going through these serial interfaces, right?

No, it is executed on the local problem-machine through 10Mbit ethernet
to a computer on the same physical lan. This will saturate the lan, and
generate lots of collisions.

/Ryde