Commit Graph

  • 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