Re: Freeing buffers (Garbage collection)

From: Andi Kleen (ak@suse.de)
Date: Fri Jun 02 2000 - 06:46:37 EST


On Fri, Jun 02, 2000 at 06:05:05AM -0500, pramodh mallipatna wrote:
> Hello,
>
> I have implemented a non-IP protocol for file transfer. When I transfer a
> huge file (100 MB) as fast as I can, sometimes I face a problem where the
> receiver stops getting packets after a while, in the sense that I can't
> even ping the ethernet interface from then on. Transfers as big as 50 Meg
> go through fine atleast a few times and then start showing this behaviour.
>
> If I then bring the interface down and then back up again, it starts
> working again, but the problem for large files still persists.
>
> I am guessing it might be because the ethernet driver is unable to
> allocate skbuffs as memory is needed by the ethernet driver aswell as the
> filesystem.
>
> Is there a separate pool for the skbuffs? How can I make sure I do not run
> out of buffers? I free the skbuffs as soon as I am done writing to the
> file. But still I have this problem.

Try increasing the values in /proc/sys/vm/freepages. That'll keep more
free memory for allocation from interrupts.

-Andi
-
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to majordomo@vger.rutgers.edu



This archive was generated by hypermail 2b29 : Wed Jun 07 2000 - 21:00:32 EST