diff options
author | Christopher Haster <chaster@utexas.edu> | 2019-05-31 14:42:15 +0300 |
---|---|---|
committer | Christopher Haster <chaster@utexas.edu> | 2019-07-24 22:45:21 +0300 |
commit | 649640c605a41fb1a8cb4cbaa4a620e9edbedbd6 (patch) | |
tree | 08d8ec8dc185dff65d7b3fdebcee7ef6b7a93f48 /emubd | |
parent | abd90cb84c818a663b584575b019258d01d0065e (diff) |
Fixed workaround for erase sizes >1024 B
Introduced in 0b76635, the workaround for erases sizes >1024 is to
commit with an unaligned CRC tag. Upon reading an unaligned CRC,
littlefs should treat the metadata pair as "requires erased". While
necessary for portability, this also lets us workaround the lack of
handling of erases sizes >1024.
Unfortunately, this workaround wasn't implemented correctly (by me)
in the case that the metadata-pair does not immediately compact. This
is solved here by added the erase check to lfs_dir_commit.
Note this is still only a part of a workaround which should be replaced.
One potential solution is to pad the commit with multiple smaller CRC
tags until we reach the next prog_size boundary.
found by kazink
Diffstat (limited to 'emubd')
0 files changed, 0 insertions, 0 deletions