All of lore.kernel.org
 help / color / mirror / Atom feed
From: Quentin Godfroy <godfroy@clipper.ens.fr>
To: Theodore Tso <tytso@mit.edu>,
	linux-ext4@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: possible (ext4 related?) memory leak in kernel 2.6.26
Date: Sun, 5 Oct 2008 18:12:15 +0200	[thread overview]
Message-ID: <20081005161214.GA2985@goelette.ens.fr> (raw)
In-Reply-To: <20081005122752.GB27335@mit.edu>

On Sun, Oct 05, 2008 at 08:27:52AM -0400, Theodore Tso wrote:
> > In both cases it freezes solid the machine for more than a minute or so, and
> > it overflows the dmesg with messages. 
> 
> Can you check and see if you got more of the messages recorded in
> /var/log/messages?  Once you do, can you take the block numbers, and
> pull them out into a single command file to feed to debugfs.

Unfortunately, there are no more messages in the syslog than in the dmesg.

... 
> Take the column of block numbers, and tack on "icheck " at the
> beginning, like so:
> 
> icheck 35491 35493 35494 35496 35497 35498 35499 35501 ...
> 
> You can put a thousand or so block numbers on each line; then it's
> probably better to start a new line with "icheck " at the beginning.  
> Then take that script and run it through debugfs:
> 
>      debugfs /dev/XXX < icheck.in > icheck.out
> 
> That will result in a file icheck.out that looks like this:
> 
> debugfs: icheck 33347
> Block  Inode number
> 33347  8193
> 33348  8193
> 33350  8196
> 33351  8197
>   ...
> 
> Now you'll need to take the inode numbers returned in icheck.out, and
> create another file called ncheck.in that will take the inode numbers
> and turn them into pathnames.  (I find that using emacs's
> kill-rectangle command very handy for doing this sort of thing, but
> other people will like to use awk, and I'm sure there's some way to do
> this using vi but I don't know what it is.  :-) It's also a good idea
> to take the inode numbers and run them through "sort -u" to get rid of
> duplicates before putting them on a single line and adding ncheck to
> them.  So what you want is to create a file ncheck.in that looks like this:
> 
> ncheck 8193 8196 8197 ....
> 
> ... and then feed that to debugfs again:
> 
> debugfs /dev/XXX  < ncheck.in  > ncheck.out
> 
> That will produce a file that looks like this:
> 
> debugfs:  ncheck 8193
> Inode	  Pathname
> 8193	  /ext4
>    ...
> 
> 
> The next thing I'd ask you to do is to look at the pathnames and
> eyeball them; are they all directories?  Files?  Files that you have
> modified earlier?  If you're not sure, you can look at a particular
> inode either by giving its pathname:
> 
> debugfs: stat /ext4
> 
> or by its inode number, in angle brackets:
> 
> debugfs: stat <8193>
> 
> What I'm trying to do here is to get a pattern of what might be going
> on.  I'm assuming that your filesystem is too big (and probably
> contains private information) for you to send it to me.  (Although if
> you're willing to send me a compressed raw e2image --- see the "RAW
> IMAGE FILES" section of the e2image man page ---- and the portions of
> the buffer information dummped in /var/log/messages, I can try to do
> some of the analysis for you.)

For the two fs the only inode which shows up is the inode 8 (this seems to
be the journal. According to 'stat <8>' in debugfs it looks like the journal is 134Megs long. I don't remember exactly how I created the fs, but i'm sure I did not specified the journal size. Does it seem reasonable for a 6,6G fs?

However seeing only the journal inode could be because I only had the last
300 blocks left in the dmesg. A small number of them did not belong to any
inode.

Should I reboot with a very big ring buffer?

  reply	other threads:[~2008-10-05 16:12 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-09-30 20:27 possible (ext4 related?) memory leak in kernel 2.6.26 Quentin Godfroy
2008-09-30 21:18 ` Theodore Tso
2008-09-30 22:23   ` Quentin
2008-10-03  0:35     ` Theodore Tso
2008-10-05  9:15       ` Quentin Godfroy
2008-10-05 12:27         ` Theodore Tso
2008-10-05 16:12           ` Quentin Godfroy [this message]
2008-10-06  2:50             ` Theodore Tso
2008-10-06 15:30               ` Eric Sandeen
2008-10-06 15:50                 ` Renato S. Yamane
2008-10-06 17:55                 ` Theodore Tso
2008-10-07 22:12                   ` Theodore Tso
2008-10-08  0:02                     ` Quentin Godfroy
2008-10-08  0:53                       ` Theodore Tso
2008-10-08 23:52                         ` Quentin Godfroy
2008-10-09  2:38                           ` Theodore Tso
2008-10-02 18:36 ` Aneesh Kumar K.V

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=20081005161214.GA2985@goelette.ens.fr \
    --to=godfroy@clipper.ens.fr \
    --cc=linux-ext4@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=tytso@mit.edu \
    /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.