Forum Rule: Always post complete source code & details to reproduce any issue!
-
02-18-2021, 08:54 PM
#826
Senior Member+
Yes - two copies - one in prior LFS and one added to the NAND code.
Not all media uses it : FRAM, RAM, PROGRAM. RAM is a NOP - not sure about FRAM to just write may take less time to just write blank on request, without wasting time to read first. As for Program - that is controlled down level in the called code to ignore erase when not needed - and seems hyper efficient/fast.
Would be good to have knowledge of all the format requests (not called by formatUnused but LFS itself) for invalidating a cached LFS Used Traverse list since building that list can be time costly. But that gets to be invasive - and some media 'format' isn't in same class to share a common class variable on the low level using the 'static_erase' I found months back. Working through that would be invasive and still not sure if that is a welcome set of changes to get the job done? Perhaps the formatUnused could just have a way to be void on 'those' media and let them fend for themselves? It almost isn't worth it on NAND with FAST format and large media capacity that takes longer to scan numerous files/dirs they can hold. Though they are better served by the early exit blockIsBlank() { exits are single config->read_size verify in each erase block } that doesn't have to read 256MB to see the media is formatted { they check only 2048 for each 131072 erase block - a 64X speedup }
Question: Is there any other reasonable use case that should be added to test in LFSIntegrity?
> like writes on an interrupt to a file - that could likely re-enter and probably bad form as the time taken is 'unknown/long'. Better to cache data and write in loop()?
> and other common interfaces beyond open, write, close, delete, dir, disk space?
->> Doesn't do any RANDOM seek writes?
-
02-23-2021, 06:14 AM
#827
Senior Member+
@mjs513 ... TD 1.54 b7 came out with OLD LittleFS in place.
Is the current github.com/Defragster/LFSintegrity up to date for a complete pull to PJRC github.com/PaulStoffregen/LittleFS
I need to put it back here - the older LFSIntegrity wasn't ideal before ... fixed that and added more.
-
02-23-2021, 07:59 AM
#828
Senior Member+
-
02-23-2021, 12:23 PM
#829
Senior Member+

Originally Posted by
defragster
Ok cool was just looking at this now - so now don't have to. Do have to so some testing with the changes though in MTP and standalone
-
02-23-2021, 12:26 PM
#830
Senior Member+

Originally Posted by
mjs513
Ok cool was just looking at this now - so now don't have to. Do have to so some testing with the changes though in MTP and standalone

Awesome. Let me know if anything changes - the git.LFSIntegrity should match? We can manage any updates but that helps formatUnused look useful and improves/updates LFSIntegrity.ino.
-
02-24-2021, 08:56 AM
#831
Senior Member+
PR prepped to update with latest and LFSIntegrity got pulled into PJRC tree. Copied those files to git.defragster\lfsintegrity so they match now for changes going forward.
Tags for this Thread
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules