All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Kristian Sørensen" <ks@cs.aau.dk>
To: root@chaos.analogic.com
Cc: andre@tomt.net, Kasper Sandberg <lkml@metanurb.dk>,
	LKML Mailinglist <linux-kernel@vger.kernel.org>,
	umbrella@cs.aau.dk
Subject: Re: Gigantic memory leak in linux-2.6.[789]!
Date: Fri, 22 Oct 2004 21:24:25 +0200	[thread overview]
Message-ID: <41795E69.9090909@cs.aau.dk> (raw)
In-Reply-To: <Pine.LNX.4.61.0410221208230.17016@chaos.analogic.com>

Richard B. Johnson wrote:

> 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.

Okay :-) So it looks like two of you says we have been mistaken :-D (and 
the behaviour has been changed since linux-2.4)

Anyway - How does this work in practice? Does the file system 
implementation use a wrapper for kfree or?
Is there any way to force instant free of kernel memory - when freed? 
Else it is quite hard testing for possible memory leaks in our Umbrella 
kernel module ... :-/


Best regards,

-- 
Kristian Sørensen
- The Umbrella Project
  http://umbrella.sourceforge.net

E-mail: ipqw@users.sf.net, Phone: +45 29723816



  reply	other threads:[~2004-10-22 19:11 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-10-22 14:13 Gigantic memory leak in linux-2.6.[789]! Kristian Sørensen
2004-10-22 14:32 ` Kasper Sandberg
2004-10-22 15:07   ` Richard B. Johnson
2004-10-22 15:50     ` Kristian Sørensen
2004-10-22 16:12       ` Richard B. Johnson
2004-10-22 19:24         ` Kristian Sørensen [this message]
2004-10-22 19:20           ` Richard B. Johnson
2004-10-22 19:33           ` Chris Friesen
2004-10-22 16:15     ` Gene Heskett
2004-10-22 16:28       ` Andre Tomt
2004-10-22 16:32       ` Chris Friesen
2004-10-23  0:51 ` David Lang
2004-10-24 14:14   ` Bill Davidsen
2004-10-24 16:04     ` Tommy Reynolds
2004-10-25 22:11       ` Bill Davidsen
2004-10-25 22:47     ` David Lang
2004-10-23  1:44 ` Bernd Eckenfels

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=41795E69.9090909@cs.aau.dk \
    --to=ks@cs.aau.dk \
    --cc=andre@tomt.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lkml@metanurb.dk \
    --cc=root@chaos.analogic.com \
    --cc=umbrella@cs.aau.dk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.