-
eced943685
Changed gc_steps into a runtime parameter, better dedup mount gc
Christopher Haster
2024-07-17 01:56:12 -05:00
-
54ecc94702
Moved lfs_alloc_ckpoint out of lfsr_mtree_gc
Christopher Haster
2024-07-16 19:22:42 -05:00
-
08c9d7dd15
Renamed lfsr_mdir_fixorphans -> lfsr_fs_fixorphans_
Christopher Haster
2024-07-16 19:09:50 -05:00
-
ac600ae35e
Extended alloc tests to more disk sizes, fixed alloc ckpoint bug
Christopher Haster
2024-07-16 18:41:22 -05:00
-
4fc03f95a7
Reworked lookahead buffer (again) to avoid shifting bits
Christopher Haster
2024-07-16 17:04:53 -05:00
-
4fe46a983f
Added simple lfsr_fs_ckmeta/ckdata functions
Christopher Haster
2024-07-15 18:05:21 -05:00
-
83f2a3c7fc
t: Fixed missing lfs_alloc_ckpoint in manual btree compaction
Christopher Haster
2024-07-15 16:08:27 -05:00
-
2f08662fb9
Added on-mount traversal flags: LFS_M_MKCONSISTENT/CKMETA/CKDATA/etc
Christopher Haster
2024-07-15 15:57:15 -05:00
-
acfae9e072
Extended lfsr_mount to accept mount flags
Christopher Haster
2024-07-15 01:48:37 -05:00
-
0a3cb2dd3a
Added filesystem-level info flags to lfsr_fs_stat
Christopher Haster
2024-07-14 19:27:27 -05:00
-
d18633e4e8
Tweaked lfsr_fs_gc to imply LFS_GC_MTREEONLY based on flags
Christopher Haster
2024-07-14 01:19:21 -05:00
-
33804cee91
t: Moved eot state changes into lfsr_mtree_gc
Christopher Haster
2024-07-12 18:08:34 -05:00
-
fc486ca4f7
Reworked lfsr_fs_gc to be incremental
Christopher Haster
2024-07-12 17:02:16 -05:00
-
a0e0ea2081
Switched to asserting only-known flags
Christopher Haster
2024-07-12 01:37:13 -05:00
-
0ee6d73560
(Re)implemented lfsr_fs_gc
Christopher Haster
2024-07-12 01:22:16 -05:00
-
0e34c46608
Dropped implicit multi-bit flags
Christopher Haster
2024-07-10 23:59:58 -05:00
-
e4b6496e09
t: Merged mkdirty + clobber => lfsr_omdir_mkdirty
Christopher Haster
2024-07-09 14:41:24 -05:00
-
ee990938e1
t: Adopted bit swapping to save dirty/mutated state
Christopher Haster
2024-07-09 14:24:06 -05:00
-
86db4330d8
t: Rerouted lfsr_fs_mkconsistent through LFS_T_MKCONSISTENT
Christopher Haster
2024-07-09 13:42:48 -05:00
-
f191d25dcc
t: Tweaked mutation flags, made sure zombie flag is cleared
Christopher Haster
2024-07-09 00:05:14 -05:00
-
0e2a909148
t: Reverted reverted most of LFS_T_MKCONSISTENT
Christopher Haster
2024-07-08 23:04:04 -05:00
-
ffe8c1e820
t: Reverted most of LFS_T_MKCONSISTENT, just check for new grms/orphans
Christopher Haster
2024-07-08 13:12:29 -05:00
-
e04526f76d
Renamed some test cases *_open -> *_opened for consistency
Christopher Haster
2024-07-08 10:43:03 -05:00
-
24f5d05bfb
Fixed lfsr_fs_fixorphans not fixing orphans
Christopher Haster
2024-07-08 10:35:01 -05:00
-
12511468ef
t: Implemented LFS_T_MKCONSISTENT
Christopher Haster
2024-07-08 08:37:59 -05:00
-
4d86c90f1b
t: Dropped LFS_T_EXCL/LFS_I_DIRTY
Christopher Haster
2024-07-06 00:36:03 -05:00
-
23c82bd7e5
t: Replaced LFS_T_EXCL with LFS_I_DIRTY flag in lfsr_tinfo
Christopher Haster
2024-07-06 00:01:38 -05:00
-
950124146c
Adopted implied LFS_O_FLUSH bit pattern in LFS_O_SYNC
Christopher Haster
2024-07-05 16:20:54 -05:00
-
b7165d51e6
t: Renamed LFS_T_CK -> LFS_T_CKDATA, kept implied LFS_T_CKMETA
Christopher Haster
2024-07-05 16:06:59 -05:00
-
c258420dd0
t: Dropped mtraversal=traversal alias
Christopher Haster
2024-07-05 15:25:10 -05:00
-
2e6a5be4e3
t: Dropped mtinfo/btinfo, just use data/bptr for everything
Christopher Haster
2024-07-05 14:54:38 -05:00
-
96834c2460
t: Renamed mtraversal states LFSR_MTRAVERSAL_* -> LFSR_MTSTATE_*
Christopher Haster
2024-07-04 03:08:56 -05:00
-
f783e6f519
t: Dropped const from btree/bshrub/mtree traverse functions
Christopher Haster
2024-07-04 02:23:36 -05:00
-
3c7b462659
t: Changed mtinfo/btinfo to refer to mdirs/rbyds by pointer
Christopher Haster
2024-07-04 02:10:40 -05:00
-
bfc108c1dc
Tweaked LFS_TYPE_TRAVERSAL to not conflict with orphans
Christopher Haster
2024-07-03 17:06:04 -05:00
-
181b08c723
Added Added lfsr_omdir_isbshrub to generalize obshrub checks
Christopher Haster
2024-07-03 16:20:12 -05:00
-
c316270ebb
Added lfsr_obshrub_t for generalized tracked bshrubs
Christopher Haster
2024-07-03 15:57:59 -05:00
-
8d7e71d961
t: Added lfsr_fs_mkdirty to mark all traversals as dirty
Christopher Haster
2024-07-03 01:16:07 -05:00
-
8da3a06121
t: Clobber traversals at the omdir level, rely on state machine
Christopher Haster
2024-07-03 00:18:18 -05:00
-
d8eedf052e
t: Moved opened traversal clobbering into lfsr_file_close
Christopher Haster
2024-07-02 21:01:48 -05:00
-
7b8667d7df
t: Allow root mutation during bshrub traversals
Christopher Haster
2024-07-02 19:29:17 -05:00
-
7fdf0b7d23
t: Switched back to mid-based traversal clobbering
Christopher Haster
2024-07-02 17:34:21 -05:00
-
7f4384fa27
Flipped btree/bshrub logic so commit__ implicitly finds rbyd
Christopher Haster
2024-07-01 16:33:30 -05:00
-
e2ec25e511
Tweaked btree/bshrub rbyd commit_ to accept any bid
Christopher Haster
2024-07-01 15:08:23 -05:00
-
f3446abfa7
t: Implemented gc_compact_thresh over bshrub nodes
Christopher Haster
2024-07-01 13:22:35 -05:00
-
227b804c7a
Fixed dbgbmap.py missing btree nodes
Christopher Haster
2024-07-01 13:11:45 -05:00
-
61ecc135dc
t: Implemented gc_compact_thresh over btree nodes
Christopher Haster
2024-06-26 17:45:36 -05:00
-
ac207586ba
Fixed some more LFS_TRACE format specifiers
fix-trace-format-again
Christopher Haster
2024-06-25 15:59:43 -05:00
-
-
4d06fc2e0e
t: (Re)implemented gc_compact_thresh, at least over mdirs
Christopher Haster
2024-06-24 16:21:38 -05:00
-
ff0271ecbe
t: Renamed LFS_T_CKDATA -> LFS_T_CK, implies LFS_T_CKMETA
Christopher Haster
2024-06-24 00:21:37 -05:00
-
b665ee3a8d
Dropped underscores from bd cksum arguments
Christopher Haster
2024-06-24 00:13:05 -05:00
-
2f1d711902
t: Changed lfsr_mtree_traverse to operate on mdir+mtraversal
Christopher Haster
2024-06-23 23:21:34 -05:00
-
b383821a22
Rearranged things so high-level fs functions come last
Christopher Haster
2024-06-23 14:53:59 -05:00
-
c934357d60
Rearranged things to group bshrub/btree logic together
Christopher Haster
2024-06-23 14:24:34 -05:00
-
55d9f5c76a
Changed bshrub functions to operate on mdir+bshrub directly
Christopher Haster
2024-06-23 13:05:06 -05:00
-
d155750f14
t: Renamed LFS_T_CKMETADATA -> LFS_T_CKMETA
Christopher Haster
2024-06-21 13:07:08 -05:00
-
e84d2afd60
Renamed lfsr_opened_* -> lfsr_omdir_*
Christopher Haster
2024-06-21 12:59:18 -05:00
-
98146d8105
Made grm implied in lfsr_grm_* functions
Christopher Haster
2024-06-21 12:19:35 -05:00
-
755b8702f5
Some minor grm tweaks
Christopher Haster
2024-06-21 12:00:31 -05:00
-
2e516d7b68
Switched to using did for dir-is-empty checks, lfsr_grm_pushdid
Christopher Haster
2024-06-21 11:20:46 -05:00
-
ec44831381
Dropped lfsr_mtree_seek for explicit mtree lookups
Christopher Haster
2024-06-21 10:58:50 -05:00
-
4a5de70b00
Made mtree implied in lfsr_mtree_* functions, renamed a couple things
Christopher Haster
2024-06-20 16:33:31 -05:00
-
ee580245ac
Moved mtree bounds check into lfsr_mtree_lookup
Christopher Haster
2024-06-20 15:47:36 -05:00
-
dd7b04564c
t: Added a couple idempotent traversal mutation tests
Christopher Haster
2024-06-20 14:46:02 -05:00
-
0502cb8f92
t: Restricted LFS_ERR_BUSY to only LFS_T_EXCL
Christopher Haster
2024-06-20 11:24:57 -05:00
-
7e96ff4dbd
t: Adopted blocks={-1,-1} for clobbered/invalid mdirs
Christopher Haster
2024-06-20 10:12:48 -05:00
-
cc90a77ff8
t: Dropped first-time mdir check for LFSR_TSTATE_MDIR
Christopher Haster
2024-06-20 10:09:28 -05:00
-
5b72973f8f
t: Filled out rest of test_traversal
Christopher Haster
2024-06-18 21:18:40 -05:00
-
d36abd387d
t: Tweaked traversal to use more states, less indirect pointers
Christopher Haster
2024-06-18 17:40:01 -05:00
-
a8a214ec0b
t: Adopted simpler blanket-mdir traversal clobbering scheme
Christopher Haster
2024-06-18 11:41:10 -05:00
-
4cd1f84a89
t: Separated mtree traversal/iteration, bshrub staging
Christopher Haster
2024-06-17 19:39:52 -05:00
-
e744106f77
t: Implemented a simple traversal clobber scheme
Christopher Haster
2024-06-17 15:57:21 -05:00
-
ab9b975ac1
t: Tweaked lfsr_btree_traverse so btinfo/mtinfo alias
Christopher Haster
2024-06-15 12:06:24 -05:00
-
635e1fe8d4
t: Added lookahead to lfsr_traversal_t, adopted in lfs_alloc
Christopher Haster
2024-06-14 20:44:01 -05:00
-
670b9fbf99
t: Implemented rudimentary lfsr_traversal_t and related functions
Christopher Haster
2024-06-14 01:53:31 -05:00
-
74d382b48f
Dropped lfs_*32/16 suffixed utils
Christopher Haster
2024-06-12 21:05:47 -05:00
-
2719d6b234
Replaced lfs_swap16/swap32/sswap16/etc with a macro
Christopher Haster
2024-06-12 20:59:17 -05:00
-
c739e18f6f
Renamed LFSR_TAG_NOISE -> LFSR_TAG_NOTE
Christopher Haster
2024-06-12 20:11:45 -05:00
-
4dbcdba067
Renamed lfsr_opened_t -> lfsr_omdir_t
Christopher Haster
2024-06-12 20:08:00 -05:00
-
096f968cbb
Dropped prettyasserts.py --no-arrows shorthand form
Christopher Haster
2024-06-12 15:13:47 -05:00
-
692db1327e
Fixed watch.py not updating when no output
Christopher Haster
2024-06-12 14:37:02 -05:00
-
a735bcd667
Fixed hanging scripts trying to parse stderr
Christopher Haster
2024-06-12 14:31:57 -05:00
-
79175e8846
Replaced !err asserts with unreachable statements
Christopher Haster
2024-06-12 13:39:24 -05:00
-
488fe6d5b2
Reverted asserts-as-hint
Christopher Haster
2024-06-12 13:15:11 -05:00
-
2425b0f89b
Removed fsinfo.disk_version
Christopher Haster
2024-06-12 12:25:01 -05:00
-
687641533c
Renamed lfsr_rbyd_prepareappend -> lfsr_rbyd_appendinit
Christopher Haster
2024-06-12 12:06:20 -05:00
-
1e7d1f34b1
Implicitly ckpoint alloc in lfsr_mdir_commit, merged prepareappend
Christopher Haster
2024-06-12 11:56:04 -05:00
-
d64cfc7eaa
Don't propagate grm cleanup errors
Christopher Haster
2024-06-12 01:40:07 -05:00
-
9f5cc0582a
Rearranged lfsr_mdir_commit__ tags based on complexity
Christopher Haster
2024-06-12 01:25:41 -05:00
-
f024b35170
Fixed missing mroot attrs lost during uninlining
Christopher Haster
2024-06-12 01:00:33 -05:00
-
9ad59dcfe6
(Re)implemented lfsr_fs_grow, variable block counts, etc
Christopher Haster
2024-06-11 16:13:58 -05:00
-
ae0e3348fe
Added -l/--list to dbgtag.py
Christopher Haster
2024-06-10 13:44:49 -05:00
-
3dc597cb5f
Added dbgerr.py for debugging littlefs's error codes
Christopher Haster
2024-06-10 04:11:26 -05:00
-
06cfd9f6bf
Added LFS_ERR_UNKNOWN (-1) for quick-and-dirty errors
Christopher Haster
2024-06-10 02:55:51 -05:00
-
4da5ad0459
Dropped weight from lfsr_rbyd_fetchvalidate
Christopher Haster
2024-06-10 02:41:34 -05:00
-
9c2c101e7f
Attempting to enable asserts-as-hints with isopen as an exception
Christopher Haster
2024-06-10 00:40:49 -05:00
-
b563050fc8
Dropped LFS_ASSERT as a compiler hint
Christopher Haster
2024-06-09 22:09:20 -05:00
-
fd41d296db
Assert on opened/closed file handles
Christopher Haster
2024-06-09 17:16:44 -05:00
-
55f0872dbc
Change lfsr_mount to return CORRUPT or NOTSUP
Christopher Haster
2024-06-09 14:59:05 -05:00
-
c72e3b24da
Made unknown file types a hard mount error, reverting
Christopher Haster
2024-06-09 14:18:02 -05:00