a3734eeb34e09b85b59b53944f88b0325b968488
Unfortunately, threading all dir blocks in a linked-list did not come without problems. While it's possible to atomically add a dir to the linked list (by adding the new dir into the linked-list position immediately after it's parent, requiring only one atomic update to the parent block), it is not easy to make sure the linked-list is in a state that always allows atomic removal of dirs. The simple solution is to allow this non-atomic removal, with an additional step to remove any orphans that could have been created by a power-loss. This deorphan step is only run if the normal allocator has failed.
Description
A little fail-safe filesystem designed for microcontrollers
https://github.com/littlefs-project/littlefs.git
14 MiB
Languages
C
68.4%
Python
30.7%
Makefile
0.9%