Re: [Yaffs] question...

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Charles Manning
Date:  
To: yaffs
Subject: Re: [Yaffs] question...
On Wednesday 07 May 2014 01:19:06 Ed Sutter wrote:
> Charles,
> Thanks for the quick reply.
> I pulled all the Q&A to the top...
>
> > Are you using Yaffs1 mode of operation? When a file is deleted the
> > chunks are marked deleted and when all the chunks in a file are
> > deleted, the erasure will occur. This can take some time.
>
> Apparently I am... is_yaffs2 is not set.
> Should this be set?


No. If you're using yaffs1 format, then changing this flag to yaffs2 will
break things.

>
> > There is some tuning, but perhaps a better option is to get a
> > background thread going for doing the gc. This will clean the decks
> > for writes to occur unimpeded.
>
> I didn't see anything in the docs on implementing background garbage
> collection when using CONFIG_YAFFS_DIRECT
>
> > How full is the file system?
>
> I've got 32Mbyte for storage, and about 6M used.
>
> > Are you using the "soft delete" feature? This defers the actual
> > deletion, but unless you have background gc running, this will just
> > move the delays into the gc.
>
> No, disable_soft_del is set to 1.
>
> Anyway, it sounds like what I want to do here is enable soft-delete and
> background garbage collection (separate task).
> Is there any documentation on that?


It sounds like this is exactly what you need to do.

The Yaffs Direct stuff does not expose background gc. I will work up the code
& some explanation to do that today. You will basically have a function that
you put in a thread and call occasionally.

Regards

-- Charles


>
> Thanks much,
> Ed
>
> > Hello Ed
> >
> > NOR is very slow to erase and this is what is causing the issues.
> >
> >
> > On Tue, May 6, 2014 at 6:15 AM, Ed Sutter
> > < <mailto:ed.sutter@alcatel-lucent.com>>
> > wrote:
> >
> >     Hi,
> >     I have YAFFS running in standalone mode for about a year now.
> >     My underlying memory is NOR, and generally speaking I see a
> >     write rate of about 1Mbyte every 3 seconds.  I have not tuned
> >     the underlying flash accesses so I'm sure there's room for
> >     improvement there.

> >
> >     The problem I am having is that as I add files (and remove them)
> >     I notice more and more that the 3 seconds turns into 10-15
> >     seconds occasionally.  I assume yaffs is doing some garbage
> >     collection; however it seems to occure a lot more often than
> >     necessary.  Is garbage collection likely the culprit?  If yes,
> >     is there any tuning that can be done to adjust how often that
> >     is done?

> >
> >
> > There is some tuning, but perhaps a better option is to get a
> > background thread going for doing the gc. This will clean the decks
> > for writes to occur unimpeded.
> >
> > How full is the file system?
> >
> >
> >     Also, is it correct to observe that the removal of a file takes
> >     essentially the same amount of time as adding a file?

> >
> >
> > Are you using Yaffs1 mode of operation? When a file is deleted the
> > chunks are marked deleted and when all the chunks in a file are
> > deleted, the erasure will occur. This can take some time.
> >
> >
> > Are you using the "soft delete" feature? This defers the actual
> > deletion, but unless you have background gc running, this will just
> > move the delays into the gc.
> >
> > Let's see what we can work out here.
> >
> > Regards
> >
> > Charles
>
> _______________________________________________
> yaffs mailing list
>
> http://lists.aleph1.co.uk/cgi-bin/mailman/listinfo/yaffs