Files
littlefs/tests
Christopher Haster f323ea1bda Made mkdir tests a bit more paranoid
Unfortunately the current dir+bookmark+grm design has a high risk of
the system becoming out-of-sync and losing bookmarks. In theory this
should cause test failures, but the previous grm-mid-off-by-one bug has
left me a bit paranoid.

So when dbglfs.py starting flashing bookmark errors, I started
investigating. But just I can't reproduce these errors in a controlled
way, and they cause no test failures...

My current setup involves this script to copy the disk file
"atomically", so even though dbglfs.py is slow, we shouldn't be reading
blocks from different filesystem states. Uh, beauty is in the eye of the
beholder and all that jazz?:

  ./scripts/watch.py -b -Kdisk bash -c "cp disk disk_ \
      && ./scripts/dbglfs.py disk_ -B4096 \
          --color=always -s -a -T -f -g 2>&1 \
      | head -n32"

But some brief investigation suggests cp is not atomic. After all, how
could it be?

My guess is we occasionaly catch blocks from different filesystem states
when a write occurs during a cp operation. So a false positive.

Still, might as well keep these extra asserts for a bit of extra
confidence we're not losing bookmarks during heavy mkdir operations.
2024-02-03 18:17:04 -06:00
..