Commit Graph

  • 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