Re: Jffs2 and big file = very slow jffs2_garbage_collect_pass

Josh Boyer
2008-01-18T17:57:52Z

On Fri, 18 Jan 2008 17:17:34 +0100
Matthieu CASTET <matthieu.castet@parrot.com> wrote:

> I sent a mail, but because of Message has a suspicious header, the
> message wait moderator approval.
>
>
> In summary,
> the code spend lot's of time in the rbtree code (7 minutes) and 4
> minutes in jffs2_get_inode_nodes.
>
>
> Matthieu
>
>
> 54366 rb_prev 543,6600
> 28345 rb_next 283,4500
> 8602 default_idle 71,6833
> 10251 __raw_readsl 40,0430
> 49648 jffs2_get_inode_nodes 11,8097
> 251 s3c2412_nand_devready 7,8438
> 1222 crc32_le 4,8492

That seems consistent with JFFS2 doing the CRC checks and constructing
the in-memory representation of your large file. I suspect the older
list-based in-memory implementation would have taken even longer, but
there could be something amiss with the rb-tree stuff perhaps.

josh