To skip the reading of the checkpoint you will need to set
skip_checkpt_read=1 (ie. true, not false). You can also set
skip_checkpt_write=1 too to save writing the checkpt.
However... this should be considered a debugging step only. If the
checkpointing is messing things up then that indicates some problem.
On Mon, Nov 13, 2017 at 10:09 PM, Jens Rudberg <firstname.lastname@example.org>
> Hi Charles.
> We're changing to mount with skip_checkpt_read=false as you suggest and
> remove the calls to sync() and see if this makes the filesystem 100%
> Let me know if you see anything in the logs or if there are tests we
> should run on the system.
> On 10 Nov 2017, at 05:52, Charles Manning <email@example.com> wrote:
> Hello Jens
> On Thu, Nov 9, 2017 at 1:51 AM, Jens Rudberg <firstname.lastname@example.org>
>> During development of a new embedded platform I have run into an unwanted
>> behaviour by yaffs.
>> We use yaffs in direct mode on an micron SLC nand with 2k pages and
>> built-in ECC functionality.
>> It seems like yaffs sometimes roll back the file system when it is
>> mounted, even if there should be no checkpoint available.
>> We see this by noticing that sometimes after a sudden reboot / crash
>> files are rollbacked to previous versions.
>> I was under the impression that the checkpoint is invalidated immediately
>> when a partition is mounted, but this may not be the case?
> No it should be invalidated as soon as there is any modification to the
> filesystem (modify file/directory, delete file/directory or any garbage
> collection). If you don't do any modifications the checkpoint will stay
> Our current method to avoid this is to call yaffs_sync() after every file
>> operation, which doesn’t seems like the right way to do it.
>> yaffs_sync() both does a full sync including checkpoint.
>> replacing the calls to yaffs_sync() with yaffs_sync_files()
> What happens if you don't use any checkpoint. eg. mount with
> skip_checkpt_read set to 1.
> I will have a look at the log and see if anything stands out.
This message was posted to the following mailing lists: