public inbox for linux-mtd@lists.infradead.org
 help / color / mirror / Atom feed
From: Martin Egholm Nielsen <martin@egholm-nielsen.dk>
To: linux-mtd@lists.infradead.org
Subject: Re: JFFS2 garbage collector blocking for minutes after mount
Date: Wed, 20 Jul 2005 16:12:37 +0200	[thread overview]
Message-ID: <dblm4l$802$1@sea.gmane.org> (raw)
In-Reply-To: <1121867130.12903.15.camel@localhost.localdomain>

>>I have a "small" NAND device (32MByte) with JFFS2 on top used as the 
>>root-fs on my system. It's been working like a charm - until just now. 
>>After (over)writing a relative large file (11 megs uncomp. - 
>>~3-5compr.), the garbage collector (jffs2_gcd_mtd0) uses 8:45 minutes of 
>>CPU time (~99%) after booting - blocking any write operations.
>>Ok, I accept that some GC'ing should be performed when going "beyond the 
>>edge" - but shouldn't this be a one-time process, so the next time I 
>>boot this is done with?
>>I see it everytime I reboot - without touching any files on the system...
>>I use the mtd source from 2005-03-04...

> The garbage collection thread is also responsible for building up the
> node tree for every inode after mounting, so that we know for sure which
> nodes are valid and which are obsolete.
So you think this is what consumes the time?

> On NAND flash we can't actually mark nodes as obsolete.
> We've made some significant improvements to that process since March,
> especially where inodes with large numbers of nodes are concerned. We
> used to sort all the nodes into a linked list before building the tree,
> but now we use a tree data structure for that instead -- so it's
> O(n log n) instead of O(n²) in the number of nodes.

> Artem has patches which should improve it still further -- I'm not sure
> if they are committed yet.
Sounds interesting... Artems states it'll be ready sometimes soon (a 
week or so from now...)

BR,
  Martin

  reply	other threads:[~2005-07-20 14:13 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-07-20  9:03 JFFS2 garbage collector blocking for minutes after mount Martin Egholm Nielsen
2005-07-20 13:45 ` David Woodhouse
2005-07-20 14:12   ` Martin Egholm Nielsen [this message]
2005-07-20 14:19     ` David Woodhouse
2005-07-20 14:34       ` Martin Egholm Nielsen
2005-07-20 19:17         ` David Woodhouse
2005-07-21  9:23           ` Stephane Fillod
2005-07-22 14:47           ` Martin Egholm Nielsen
2005-07-23 15:07             ` David Woodhouse
2005-07-24 20:09               ` Martin Egholm Nielsen
2005-07-25  9:49                 ` Artem B. Bityuckiy
2005-07-25  9:58                   ` Martin Egholm Nielsen
2005-07-27  7:10                     ` Martin Egholm Nielsen
2005-07-26 13:04   ` Ferenc Havasi
2005-07-26 13:06     ` Artem B. Bityuckiy
2005-07-26 13:16       ` Ferenc Havasi
2005-07-26 13:08     ` Martin Egholm Nielsen
2005-07-26 13:14     ` Steven Scholz
2005-07-26 14:05       ` Ferenc Havasi
2005-07-26 14:06         ` Steven Scholz

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='dblm4l$802$1@sea.gmane.org' \
    --to=martin@egholm-nielsen.dk \
    --cc=linux-mtd@lists.infradead.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox