[U-Boot-Users] fsload taking more time

Hello,
I have booted kernel image from the jffs2 file system. The kernel image "uImage" is located in /boot directoy of jffs2 file system, to load uImage form /boot to RAM location 0×, "fsload 0× boot/uImage" command is used. Then this kernel image is booted from 0× using " bootm 0×" command
But there is a issue that it is taking 5-6 sec (approx) more while doing fsload, comapred to loading uImage from raw flash location and booting it.
The function jffs2_1pass_build_lists() on u-boot-1.2.0/fs/jffs2/jffs2_1pass.c is actually taking more time. May you please suggest me What this function does?? what to do to solve this isuue??

Hi Saiful,
I have booted kernel image from the jffs2 file system. The kernel image "uImage" is located in /boot directoy of jffs2 file system, to load uImage form /boot to RAM location 0×, "fsload 0× boot/uImage" command is used. Then this kernel image is booted from 0× using " bootm 0×" command
But there is a issue that it is taking 5-6 sec (approx) more while doing fsload, comapred to loading uImage from raw flash location and booting it.
The function jffs2_1pass_build_lists() on u-boot-1.2.0/fs/jffs2/jffs2_1pass.c is actually taking more time. May you please suggest me What this function does?? what to do to solve this isuue??
This behaviour is rooted in how jffs2 works, especially that appends new data rather than to overwrite in place. So on the first pass it has to build up a list on what fragments make up the current files on that partition. This forces jffs2 to scan *the whole* partition before it can serve a file (just look at the loop in the function you quoted).
So if you want to get faster, either don't use JFFS2 or shrink the partition so the scan speeds up.
Cheers Detlev
participants (2)
-
Detlev Zundel
-
Saiful Khan