Messages in this thread | | | Date | Fri, 22 Oct 2004 12:12:13 -0400 (EDT) | From | "Richard B. Johnson" <> | Subject | Re: Gigantic memory leak in linux-2.6.[789]! |
| |
On Fri, 22 Oct 2004, [ISO-8859-15] Kristian Sørensen wrote:
> Richard B. Johnson wrote: >> On Fri, 22 Oct 2004, Kasper Sandberg wrote: >> >>> On Fri, 2004-10-22 at 16:13 +0200, Kristian Sørensen wrote: >>> >>>> Hi all! >>>> >>>> After some more testing after the previous post of the OOPS in >>>> generic_delete_inode, we have now found a gigantic memory leak in Linux >>>> 2.6. >>>> [789]. The scenario is the same: >>>> >>>> File system: EXT3 >>>> Unpack and delete linux-2.6.8.1.tar.bz2 with this Bash while loop: >>>> >>>> let "i = 0" >>>> while [ "$i" -lt 10 ]; do >>>> tar jxf linux-2.6.8.1.tar.bz2; >>>> rm -fr linux-2.6.8.1; >>>> let "i = i + 1" >>>> done >>>> >>>> When the loop has completed, the system use 124 MB memory more _each_ >>>> time.... >>>> so it is pretty easy to make a denial-of-service attack :-( >> >> >> >> Do something like this with your favorite kernel version..... >> >> while true ; do tar -xzf linux-2.6.9.tar.gz ; rm -rf linux-2.6.9 ; vmstat ; >> done >> >> You can watch this for as long as you want. If there is no other >> activity, the values reported by vmstat remain, on the average, stable. >> If you throw in a `sync` command, the values rapidly converge to >> little memory usage as the disk-data gets flused to disk. > The problem is, that the free memory reported by vmstat is decresing by 124mb > for each 10-iterations.... > > The allocated memory does not get freed even if the system has been left > alone for three hours! >
Yes. So? Why would it be freed? It's left how it was until it is needed. Freeing it would waste CPU cycles.
This cannot be a problem unless you are inventing some sort of hot-swap memory thing. If so, you need to make a module that tells the kernel memory manager to free everything so you can remove and replace the RAM.
> > Cheers, Kristian.
> > -- > Kristian Sørensen > - The Umbrella Project > http://umbrella.sourceforge.net > > E-mail: ipqw@users.sf.net, Phone: +45 29723816 >
Cheers, Dick Johnson Penguin : Linux version 2.6.9 on an i686 machine (5537.79 GrumpyMips). 98.36% of all statistics are fiction. | |