-
0fa33b7776
Cleaned up post-mdir-commit state updates a bit
Christopher Haster
2024-02-08 22:51:43 -06:00
-
307d60299f
Reinlined mtree/mroot commit logic into lfsr_mdir_commit
Christopher Haster
2024-02-07 13:19:40 -06:00
-
2752d8c486
add nim-littlefs to readme
Ryan McConnell
2024-02-07 02:53:16 -05:00
-
-
-
4b27c93f52
Brought back the opened namespace
Christopher Haster
2024-02-06 17:10:38 -06:00
-
3dab5367a5
Dropped LFS_ERR_BADF
Christopher Haster
2024-02-06 17:05:20 -06:00
-
31745c5835
Renamed traversal/iteration variables to one letter names
Christopher Haster
2024-02-06 16:34:36 -06:00
-
c0e9406b0b
Reverted to mweight -> mleaf_weight and made lfs_t const
Christopher Haster
2024-02-06 15:50:47 -06:00
-
4e851c2d88
Added a couple attr-related helper functions
Christopher Haster
2024-02-06 15:29:43 -06:00
-
ddbfcaa722
Fixed synthetic move underflows in lfs_dir_get
fix-pending-rm-get-underflow
Christopher Haster
2024-02-04 14:20:02 -06:00
-
-
204f46a131
Reworked internal tests remove unnecessary shim functions
Christopher Haster
2024-02-02 15:15:23 -06:00
-
921fe2ba1b
Tweaked documentation of implicit enums in test defines
Christopher Haster
2024-01-28 03:27:43 -06:00
-
5e633aa554
Switched from decimal to hexidecimal for test name suffixes
Christopher Haster
2024-01-28 03:01:39 -06:00
-
66a557d19d
Dropped all alpha lookup table for 'a'+mod 26 arithmetic
Christopher Haster
2024-01-28 02:41:19 -06:00
-
15cd1d29e0
Added explicit test over directory ordering
Christopher Haster
2024-01-28 00:32:22 -06:00
-
40b926b947
Removed mid argument from lfsr_mdir_lookup*
Christopher Haster
2024-01-28 00:05:55 -06:00
-
d30ed42c7f
Ported/cleaned up mtree tests
Christopher Haster
2024-01-27 17:38:32 -06:00
-
3a90d1046b
Reverted insert tags appending, fixed insert issues in named btrees
Christopher Haster
2024-01-26 22:56:58 -06:00
-
7868ec7122
Ported over most rbyd+btree tests to new attr-list format
Christopher Haster
2024-01-26 13:16:36 -06:00
-
f323ea1bda
Made mkdir tests a bit more paranoid
Christopher Haster
2024-01-25 12:14:23 -06:00
-
b09e933e1e
Eagerly discard attr-list in lfsr_mdir_commit__
Christopher Haster
2024-01-25 01:41:53 -06:00
-
4ebc7d0119
Reverted specifically mids to insert _before_ the current mid
Christopher Haster
2024-01-24 21:48:21 -06:00
-
eb7c48fbd0
Fixed on-disk grm representation being off-by-one
Christopher Haster
2024-01-23 23:04:45 -06:00
-
f2e8fdb5f1
Changed insert tags to insert _after_ the current rid
Christopher Haster
2024-01-23 14:39:57 -06:00
-
aa0fe6c12b
Dropped LFSR_ATTR_ and LFSR_ATTR_IF
Christopher Haster
2024-01-23 01:30:28 -06:00
-
33ac8bfc80
Moved rids out of attr-lists
Christopher Haster
2024-01-22 20:57:54 -06:00
-
e04748dadd
Renamed SUB/SUPWIDE -> SUB/SUPMASK
Christopher Haster
2024-01-22 08:03:20 -06:00
-
3c13afd5c2
Added explicit test over unreachable tag holes
Christopher Haster
2024-01-21 23:48:32 -06:00
-
5f25f32ff1
Adopted SUPWIDE tag bit, parallel to the SUBWIDE (was WIDE) bit
Christopher Haster
2024-01-21 22:21:39 -06:00
-
e8b1be17fe
Added bshrub support to dbgbmap.py
Christopher Haster
2024-01-21 20:06:22 -06:00
-
991f04a4fb
Dropped shrub struct, shoved shrub.estimate into shrub.eoff
Christopher Haster
2024-01-21 00:30:10 -06:00
-
bea13dcf8e
Use sign bit of rbyd.trunk to indicate shrubness of rbyds
Christopher Haster
2024-01-21 00:06:36 -06:00
-
4ce582bf9b
Adopted case-as-label style in switch statements
Christopher Haster
2024-01-20 22:00:59 -06:00
-
6fc040db1a
Adopted paren-cond ternary operator style
Christopher Haster
2024-01-20 21:40:00 -06:00
-
76715ced4a
Reverted the dropping of conditional/noop attrs
Christopher Haster
2024-01-20 16:09:12 -06:00
-
96b62ff804
Dropped conditional/noop attrs, prefer incremental attr allocation
Christopher Haster
2024-01-20 15:01:46 -06:00
-
ff6d8a588e
Adopted consistent scratch attr/buf allocation pattern
Christopher Haster
2024-01-20 12:43:39 -06:00
-
6436fd21cf
Readopted bshrub namespace, renamed ftree -> bshrub
Christopher Haster
2024-01-20 02:00:30 -06:00
-
9978b46a0c
Restructured lfsr_btree_traverse a bit to be simpler
Christopher Haster
2024-01-19 16:05:46 -06:00
-
fdfa7b5908
Avoid touching disk when out-of-bounds in lfsr_rbyd_lookupnext
Christopher Haster
2024-01-19 15:33:41 -06:00
-
9adb22eee0
Enforced stat/dir_read of a dir results in size=0
Christopher Haster
2024-01-19 02:12:11 -06:00
-
d32dbd297a
Adopted opened-mdir field in lfsr_file_t
Christopher Haster
2024-01-19 02:01:49 -06:00
-
d2a6a6ee2f
Reverted to separately tracked dir pos/bookmark mdirs
Christopher Haster
2024-01-19 01:39:46 -06:00
-
76ccefcc84
Found another bug in mdir tracking, dropping for an extra lookup
Christopher Haster
2024-01-18 23:16:16 -06:00
-
1db215309b
Dropped lfsr_mdir_bid/rid convenience functions
Christopher Haster
2024-01-18 15:32:41 -06:00
-
942427dc8c
Reworked lfsr_mtree_pathlookup a bit to better leverage internal errors
Christopher Haster
2024-01-18 15:16:00 -06:00
-
a17b5e3cd6
Report grmed mids as orphaned at the mdir level
Christopher Haster
2024-01-18 12:34:55 -06:00
-
033d5545e9
Added lfsr_mid_isopened to dedup zombie/orphan checks
Christopher Haster
2024-01-18 12:20:33 -06:00
-
749f540a2b
Made mdir drops atomic again
Christopher Haster
2024-01-18 11:54:18 -06:00
-
3eaee6877c
Fixed issue where fixorphans deleted opened mids
Christopher Haster
2024-01-17 02:57:12 -06:00
-
15593ccc49
Renamed scratch files -> orphan files
Christopher Haster
2024-01-16 22:13:58 -06:00
-
f6742eefb3
Fixed test failures caused by changes to open semantics
Christopher Haster
2024-01-16 00:50:54 -06:00
-
0c6db4c9a7
Extended fscratch tests to cover renames + different sizes
Christopher Haster
2024-01-15 17:45:49 -06:00
-
7385d84df5
Fixed/implemented renaming open files
Christopher Haster
2024-01-15 16:41:08 -06:00
-
f51dc5c5af
Implemented zombied file handles
Christopher Haster
2024-01-15 15:08:12 -06:00
-
99156b5573
Implemented orphans resulting from closing desynced scratch files
Christopher Haster
2024-01-13 13:31:19 -06:00
-
0510c4b185
Added tests over shared scratch files
Christopher Haster
2024-01-12 15:29:56 -06:00
-
ba505c2a37
Implemented scratch file basics
Christopher Haster
2024-01-12 12:13:43 -06:00
-
f1697261a9
Renamed F_UNFLUSHED/UNSYNCED -> UNFLUSH/UNSYNC for comedic effect
Christopher Haster
2024-01-11 02:57:57 -06:00
-
2df21e1f21
Fixed test_alloc failure caused by aborting close
Christopher Haster
2024-01-11 02:31:35 -06:00
-
a781267420
Adopted common O_RDONLY/WRONLY/RDWR bit patterns
Christopher Haster
2024-01-10 23:44:05 -06:00
-
1344d416d2
Relaxed asserts, allow syncing rdonly files, error on unsync
Christopher Haster
2024-01-10 22:50:45 -06:00
-
122864f4b6
Reverted LFS_O_SYNC implicit noop sync broadcasting
Christopher Haster
2024-01-10 20:12:06 -06:00
-
4e7a68ff08
Fixed another subtle corner cases with noop sync broadcasting
Christopher Haster
2024-01-10 19:45:57 -06:00
-
fdc8c8caf1
Fixed noop sync broadcasting, added more specific sync tests
Christopher Haster
2024-01-10 16:47:42 -06:00
-
0891f6264f
Renamed test_fmulti -> test_fsync
Christopher Haster
2024-01-10 12:41:02 -06:00
-
dfdf109505
Revert back to single typed linked-list for opened mdirs
Christopher Haster
2024-01-10 12:16:13 -06:00
-
da726c1376
Removed commit penalty from shrub eviction heuristic
Christopher Haster
2024-01-09 21:59:15 -06:00
-
5d0b116935
Reorganized shrub/sprout/mdir stuff a bit
Christopher Haster
2024-01-09 17:27:29 -06:00
-
91c52402a7
Brought back lfsr_ftree_t just for naming a couple things
Christopher Haster
2024-01-09 16:31:19 -06:00
-
60d52d6cef
Collapsed lfsr_ftree_t struct into lfsr_file_t
Christopher Haster
2024-01-09 14:57:23 -06:00
-
7d8315a598
Dropped becksums from direct block pointers
Christopher Haster
2024-01-09 12:06:18 -06:00
-
b0bd026b87
Reworked ftree/bshrub/shrub relationship, staging in ftree now
Christopher Haster
2024-01-09 09:45:02 -06:00
-
f209c95dad
Tweaked bshrub/bsprout compact code for consistency
Christopher Haster
2024-01-08 14:53:42 -06:00
-
fa1e7bb98e
Renamed a couple shrub-related functions to be shrub-related
Christopher Haster
2024-01-08 03:31:30 -06:00
-
34d522a71e
Restricted lfsr_ftree_t to ftree related things
Christopher Haster
2024-01-07 19:15:29 -06:00
-
07e9bbf5b7
Dropped the file.size field
Christopher Haster
2024-01-07 12:28:25 -06:00
-
ebddafd66f
Dropped file-level idempotent errors
Christopher Haster
2024-01-07 00:24:58 -06:00
-
b76ff63e53
Added more sync tests, fixed some bugs, found some design flaws
Christopher Haster
2024-01-05 23:10:33 -06:00
-
724fc5fc91
Hide gdb info header from test.py/bench.py --gdb
Christopher Haster
2024-01-05 13:21:59 -06:00
-
b336e92c66
Exposed lfsr_file_flush, LFS_O_FLUSH, for manually flushing buffers
Christopher Haster
2024-01-05 02:05:22 -06:00
-
ae2644eb88
Added LFS_O_SYNC, for implicit syncs during file writes
Christopher Haster
2024-01-04 22:56:25 -06:00
-
b5e264bec4
Fixed issue with pointer comparisons in prettyasserts.py
Christopher Haster
2024-01-04 22:52:46 -06:00
-
5e4af92b44
Fixed issue where lfsr_file_write never clears the unflushed flag
Christopher Haster
2024-01-04 01:44:58 -06:00
-
3d7ea5b4d4
Changed bypassing writes to update buffer with write tail
Christopher Haster
2024-01-04 01:19:23 -06:00
-
637784d109
Reverted pushed ftree tracking down into lfsr_ftree_carve
Christopher Haster
2024-01-03 16:35:14 -06:00
-
5ce5927fdd
Pushed ftree tracking down into lfsr_ftree_carve
Christopher Haster
2024-01-03 15:48:48 -06:00
-
f14d06b22b
Fixed incorrect condition preventing left fragment coalescing
Christopher Haster
2024-01-02 15:23:08 -06:00
-
b15940461d
Implemented desynchronized files
Christopher Haster
2024-01-02 13:44:19 -06:00
-
3e32569454
Cleaned up a number of false-positive warnings
Christopher Haster
2024-01-01 17:30:19 -06:00
-
928c307355
Reworked bshrubs a tiny bit, allow forced recalculations
Christopher Haster
2024-01-01 17:03:03 -06:00
-
b35b532144
Fixed multiple opened files not including all bshrub estimates
Christopher Haster
2024-01-01 16:37:27 -06:00
-
a09b6ce871
Renamed bshrub.progged -> bshrub.estimate
Christopher Haster
2024-01-01 15:14:41 -06:00
-
9719ec7baf
Tried to clean up rough edges around bshrub estimate
Christopher Haster
2024-01-01 15:10:27 -06:00
-
8c1fe11c4d
Fixed two issues related to converting to bshrubs
Christopher Haster
2024-01-01 14:18:38 -06:00
-
8f2a6a3095
Implemented file sync broadcasting
Christopher Haster
2024-01-01 13:50:24 -06:00
-
90b44a8859
Reworked/cleaned up mdir/rbyd estimate functions
Christopher Haster
2023-12-31 16:38:19 -06:00
-
ae608880fa
Cleaned up bsprout/bshrub commit/compact logic
Christopher Haster
2023-12-30 16:51:44 -06:00
-
3222fccad2
Dropped attr-list from lfsr_mdir/rbyd_compact
Christopher Haster
2023-12-30 14:49:29 -06:00
-
724eb02cea
Extended lfsr_ftree_t to include the opened-mdir
Christopher Haster
2023-12-30 14:10:36 -06:00
-
ad522fb619
Modified lfsr_mdir_commit to try to prevent duplicate bshrubs/bsprouts
Christopher Haster
2023-12-29 23:27:16 -06:00