On 18/07/12 16:27, S. K. wrote: > How YAFFS2 manages the Deleted file until GC deletes them physically?
> How Does the logically deletion happen ?
There are quite a few edge cases, particularly in the case of hard
links, so I suggest you read the code for a full picture. It's in
yaffs_guts.c; look at yaffs_unlink_worker. (It's quite instructive to
follow through various calls from the high-level filesystem entrypoints
In short, a file is resized to size zero (so its data chunks will be
GCed), and it is moved so that it is in the "deleted" directory. This is
done through the regular filesystem operations so is written into the
filesystem log in the usual way. After that, the file's header and data
chunks no refer to a live file, so are free to be reclaimed by the GC at
some suitable point.
This message was posted to the following mailing lists: