[Yaffs] Assertion after shutdown without checkpoint saved

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: yaffs@petrowitsch.de
Date:  
To: yaffs@lists.aleph1.co.uk
Subject: [Yaffs] Assertion after shutdown without checkpoint saved
Hi,

I came across a problem, which occurs, when I shutdown or restart
my system after having written and successfully closed a file on a
Yaffs partition, but NOT having called sync or unmount (so no checkpoint
was written).

On the next startup Yaffs starts scanning the flash, as it seems to be unhappy
with the checkpoint. During scanning it sometimes happens, that I get an assertion
at line 7247 of yaffs_guts.c. This is in function yaffs_VerifyObjectInDirectory
and the code in the vicinity is

    if (obj->parent->variantType != YAFFS_OBJECT_TYPE_DIRECTORY) {
        T(YAFFS_TRACE_ALWAYS, (TSTR("Parent is not directory" TENDSTR)));
        YBUG();
    }


On my (embedded) system YBUG() leads to a kernel panic, so nothing
else happens. When I restart my system again, the problem does NOT
occur again. Is this a known problem? If not - do you have any idea what
could cause this behaviour?

Thanks & kind regards,
Gerhard