[U-Boot-Users] jffs2 fsload - SOLVED.

Ronny Nilsson rln-uboot at arbetsmyra.dyndns.org
Thu Feb 1 14:01:55 CET 2007


> ---------- Forwarded message ----------
> From: Dan Merillat <harik.attar at gmail.com>
> Date: Jan 12, 2007 2:14 AM
> Subject: jffs2 fsload - SOLVED.
> To: u-boot-users at lists.sourceforge.net
>
>
> Booting off jffs2 is now a valid configuration.   The failure was
> that for each node, jffs2_1pass.c was doing an insertion sort.  
> That's an O(N^2) operation, and that's not
> current filecount, that's every filename version that has ever
> existed on your flash.

Hi
I'm very interested in your patch because my system is also suffering 
from extreme slow boot. However, currently I haven't the time to try 
your patch out (hopefully later though). Made a quick view of it though 
and it looks promising. Beyond you patch I too have identified some 
hotspots in the JFFS2 driver and is working on a patch myself which I 
think will complement yours.


> I changed it from a insertion sort to a list-based mergesort (no
> extra heap requirements) and it read the filesystem in 650ms.

Very nice.


> the spinner: all those compares added 15 seconds to the boot time. 
> Removed.

Realy? That much?


> The main problem is that there's no dcache on ARM, so we pay a
> massive penalty for
> function calls or even memory->register loads.   Simple addition
> became quite expensive, hence changing offset+part->offset into
> offset.

This is not true. It depends on the ARM HW implementation if there is a 
dcache or not. Some has (like mine) and some don't.


Regards
/Ronny






More information about the U-Boot mailing list