[U-Boot] Does uboot EBS(erase block summary) to reduce JFFS2 scaning time?

HeLei leon.he at msn.com
Tue Nov 3 10:21:13 CET 2009


Ok, thank you, jocke. 

Can you tell me how much time can be saved according to your idea, by your experience?
 
> Subject: RE: [U-Boot] Does uboot EBS(erase block summary) to reduce JFFS2 scaning time?
> To: leon.he at msn.com
> CC: u-boot at lists.denx.de
> From: joakim.tjernlund at transmode.se
> Date: Tue, 3 Nov 2009 10:08:06 +0100
> 
> HeLei <leon.he at msn.com> wrote on 03/11/2009 09:21:04:
> > Thank you, Jocke
> >
> > > Subject: Re: [U-Boot] Does uboot EBS(erase block summary) to reduce JFFS2
> > scaning time?
> > > To: leon.he at msn.com
> > > CC: u-boot at lists.denx.de
> > > From: joakim.tjernlund at transmode.se
> > > Date: Tue, 3 Nov 2009 08:41:08 +0100
> > >
> > >
> > > >
> > > > Hi, All
> > > >
> > > >
> > > >
> > > > Each time JFFS2 initialized, uboot need to scan the whole flash. This is
> > > > fairly time consuming.
> > > >
> > > >
> > > >
> > > > So EBS(erase block summary) is used to JFFS2 to reduce mounting time. And I
> > > > believe this can also be used to UBOOT to reduce booting time.
> > > >
> > > >
> > > >
> > > > Does UBOOT support this feature? or does any other solution in uboot to
> > > > reduce JFFS2 scaning time?
> > >
> > > Don't think EBS is going to buy you much. The main problem is that the
> >
> > You mean even EBS is used in UBOOT, it will not give me much help. But it
> > seems there is great efficiency in jffs2 mounting, from some artical in
> > internet, such as:http://www.embedded-linux.co.uk/tutorial/jffs2-summary
> 
> I tried summary long time ago and it wasn't such a big win. It has other
> drawbacks too such as not beeing able to mark nodes on NOR flash obsolete.
> 
> >
> > > scanning of JFFS2 in u-boot is inefficient. u-boot could take a
> > > hint from the kernel impl. of JFFS2 to reduce scanning. The biggest
> > > ones are:
> > > - do no scan the whole EB when it is empty.
> > If we don't scan the block, how can we tell the EB is empty?
> 
> This was the key for me. I added an optimization that had been forgotten:
> just scan the first 512-1024 bytes, if these are empty, assume that
> the rest of the EB is too. You can find this optimization in the kernel
> also.
> 
> Once this optimization was in place, summary didn't help me.
> >
> > > - impl. a better crc32(use the one from linux)
> > > - Don't scan more than you have to, that is, ls/read /some/file
> > > should only scan and keep records to do the ls/read of that
> > > particular file.
> > So we have to have an index, or something like that, to tell which file in
> > which EBs. This index is always generated by the scan for the first time.
> > The only workaround like this idea is to divide the flash into several
> > paritions, the scan is performed on certain partition each time.
> >
> > >
> > > There were some patches floating around quite some time ago to improve
> > > scanning but I don't think they made it into the u-boot repo.
> > >
> > >
> >
> > As far as I know, YAFFS2 also has this problem however the code is ported
> > from linux. It's also inefficient for YAFFS2 scanning?
> 
> No idea, I am not using YAFFS2
> 
 		 	   		  
_________________________________________________________________
MSN十年回馈,每位用户可免费获得价值25元的卡巴斯基反病毒软件2010激活码,快来领取!
http://kaba.msn.com.cn/?k=1


More information about the U-Boot mailing list