Commit Graph

  • a8f54fb1e0 Brought back the lfsr_mptr_t Christopher Haster 2023-11-21 13:53:15 -06:00
  • bc8d54f9e0 Cleaned up bshrub code a bit Christopher Haster 2023-11-21 12:39:46 -06:00
  • 2a4aadca0e Fixed a number of bshrub-related alloc/clobber test failures Christopher Haster 2023-11-21 02:33:56 -06:00
  • 4793d2f144 Fixed new bshrub roots and related bug fixing Christopher Haster 2023-11-20 23:10:30 -06:00
  • 6bd00caf93 Reimplemented eager shrub eviction, now with a more reliable heuristic Christopher Haster 2023-11-20 00:13:51 -06:00
  • 6b82e9fb25 Fixed dbg scripts to allow explicit trunks without checksums Christopher Haster 2023-11-19 15:41:09 -06:00
  • c94b5f4767 Redesigned the inlined topology of files, now using geoxylic btrees Christopher Haster 2023-11-18 23:23:39 -06:00
  • 7243c0f371 Fixed some confusion in tracebd.py around buffered lines with headers Christopher Haster 2023-11-13 13:42:11 -06:00
  • 195d8c5dcc Implemented the fracturing of small blocks into fragments Christopher Haster 2023-11-13 00:37:46 -06:00
  • f8e0ff0234 Limited block merging to only merge when fits Christopher Haster 2023-11-12 13:17:51 -06:00
  • b0e1d49efe Implemented a block crystalization algorithm that actually works Christopher Haster 2023-11-10 21:11:35 -06:00
  • 0c3fea4a6e Changed lfsr_mtree_pathlookup to match other mtree functions Christopher Haster 2023-11-09 00:19:07 -06:00
  • 135bb17409 Tweaked named btrees to support strict key->value mapping Christopher Haster 2023-11-08 22:27:46 -06:00
  • f9a38756ca Ripped out inlined (in-RAM) btree union Christopher Haster 2023-11-08 01:31:52 -06:00
  • d36d67c9b0 Dropped --github from plotmpl.py Christopher Haster 2023-11-06 20:26:26 -06:00
  • 6f0e0c918d In plotmpl.py, tweaked --github colors to be a bit more readable Christopher Haster 2023-11-06 19:29:56 -06:00
  • 6d81b0f509 Changed --context short flag to -C in scripts Christopher Haster 2023-11-06 01:59:03 -06:00
  • d1b9a2969f Added -F/--failures to test.py/bench.py to limit failures when -k/--keep-going Christopher Haster 2023-11-06 01:25:27 -06:00
  • c3d7cbfb09 Changed how labels work in plot.py/plotmpl.py to actually be useable Christopher Haster 2023-11-05 19:55:10 -06:00
  • b3aa0bf474 Tweaked amor.py to use size field for amortized measurements Christopher Haster 2023-11-04 23:28:25 -05:00
  • 1e4d4cfdcf Tried to write errors to stderr consistently in scripts Christopher Haster 2023-11-04 20:54:00 -05:00
  • d0a6ef0c89 Changed scripts to not infer field purposes from CSV values Christopher Haster 2023-11-04 15:24:18 -05:00
  • 2be3ff57c5 Moved post-bench amor/avg analysis out into amor.py and avg.py Christopher Haster 2023-11-04 13:11:34 -05:00
  • 0f93fa3057 Tweaked script field arg parsing to strip whitespace almost everywhere Christopher Haster 2023-11-03 14:58:16 -05:00
  • 616b4e1c9e Tweaked scripts that consume .csv files to filter defines early Christopher Haster 2023-11-03 14:30:22 -05:00
  • fb9277feac Tweaked test.py/bench.py to allow no suites to test compilation Christopher Haster 2023-11-03 11:15:45 -05:00
  • e8bdd4d381 Reworked bench.py/bench_runner/how bench measurements are recorded Christopher Haster 2023-11-03 10:27:17 -05:00
  • 4069cf5701 Tweaked test/bench prng to convert 0 -> -1 Christopher Haster 2023-11-02 12:16:42 -05:00
  • 0d6ff3b663 Added lfsr_mtree_t, store direct mptrs decoded Christopher Haster 2023-11-01 01:21:18 -05:00
  • cf26100aa4 Generated v2 prefixes geky-bot 2023-10-31 19:00:10 +00:00
  • c733d9ec57 Merge pull request #884 from DvdGiessen/static-functions v2.8.1 Christopher Haster 2023-10-31 13:26:35 -05:00
  • 06439f0cc4 Tried to clean up one-line file state in dbglfs.py Christopher Haster 2023-10-30 15:44:22 -05:00
  • 4ecf4cc654 Added dbgbmap.py, tweaked tracebd.py to match Christopher Haster 2023-10-30 15:15:58 -05:00
  • 3e46139a45 Fixed subtle shared mutability bug in tracebd.py Christopher Haster 2023-10-27 13:51:04 -05:00
  • 46b78de500 Tweaked tracebd.py in a couple of ways, adopted bdgeom/--off/-n Christopher Haster 2023-10-27 00:39:38 -05:00
  • c531a5e88f Replace erroneous LFS_FILE_MAX upper bound 4294967296 to 4294967295 Brian Pugh 2023-10-30 11:18:20 -07:00
  • 8f9427dd53 Add value-range checks for user-definable macros Brian Pugh 2023-10-29 13:50:38 -07:00
  • e6d736dba9 Adopted lfsr_data_t hole representation in readnext functions Christopher Haster 2023-10-25 23:59:19 -05:00
  • 13192f3f6b Reworked lfsr_data_t based on what functionality we actually use Christopher Haster 2023-10-25 23:27:10 -05:00
  • 36e8f01261 Cleaned up shrub/tree reading/lookups quite a bit Christopher Haster 2023-10-25 14:09:56 -05:00
  • bcefc3ef06 Tweaked how mount responds to invalid grm modes Christopher Haster 2023-10-25 12:09:10 -05:00
  • bfc8021176 Reworked config tags, adopted rflags/wflags/oflags Christopher Haster 2023-10-25 01:58:23 -05:00
  • 6dcdf1ed61 Renamed BNAME -> NAME, CCKSUM -> CKSUM Christopher Haster 2023-10-25 00:26:17 -05:00
  • 240fe4efe4 Changed CKSUM suptype encoding from 0x2000 -> 0x3000 Christopher Haster 2023-10-24 23:46:11 -05:00
  • 1fc2f672a2 Tweaked tag encoding a bit post-slice to make space for becksum tags Christopher Haster 2023-10-24 22:34:21 -05:00
  • 35434f8b54 Removed remnants of slice code, and cleaned things up a bit Christopher Haster 2023-10-24 22:26:08 -05:00
  • 8f3f32d1f3 Added -Wmissing-prototypes Christopher Haster 2023-10-24 11:58:44 -05:00
  • b1bf650328 Extended test_files to test file btrees (up to 4*BLOCK_SIZE) Christopher Haster 2023-10-24 02:25:55 -05:00
  • 6d8eb948d1 Tweaked tracebd.py to prioritize progs over erases Christopher Haster 2023-10-24 02:18:40 -05:00
  • d1e79bffc7 Renamed crystallize_size -> crystal_size Christopher Haster 2023-10-23 12:27:44 -05:00
  • 92fc780f71 lfs_fs_raw* functions should be static Daniël van de Giessen 2023-10-23 13:35:34 +02:00
  • e25d11c33c Extended new "fragmenting" write strategy to file btrees Christopher Haster 2023-10-21 22:03:42 -05:00
  • c815c19c20 New "fragmenting" write strategy Christopher Haster 2023-10-20 01:22:44 -05:00
  • 907c24beeb Renamed a number of things related to shrubs/trees Christopher Haster 2023-10-19 15:26:56 -05:00
  • 2940555caa Attempted to implement slice dereferencing Christopher Haster 2023-10-19 01:05:22 -05:00
  • 865477d7e1 Changing coalesce strategy, reimplemented shrub/btree carve Christopher Haster 2023-10-17 23:21:18 -05:00
  • fce1612dc0 Reverted to separate BTREE/BRANCH encodings, reordered on-disk structs Christopher Haster 2023-10-15 12:11:16 -05:00
  • 1d5946b5ea Renamed mblocks -> mptr Christopher Haster 2023-10-14 14:11:20 -05:00
  • 173de4388b Added file tags to rendering of inner tree tags in dbglfs.py Christopher Haster 2023-10-14 04:47:25 -05:00
  • fbb6a27b05 Changed crystallization strategy in btrees to rely on coalescing Christopher Haster 2023-10-12 22:02:35 -05:00
  • a81691744a Reworked lfsr_file_read a bit Christopher Haster 2023-10-11 02:02:40 -05:00
  • 57aa513163 Tweaked debug prints to show more information during mount Christopher Haster 2023-10-10 17:31:43 -05:00
  • 5ecd6d59cd Tweaked config and gstate reprs in dbglfs.py to be more readable Christopher Haster 2023-10-10 16:26:23 -05:00
  • b936e33643 Tweaked dbg scripts to resize tag repr based on weight Christopher Haster 2023-10-10 15:34:04 -05:00
  • c8b60f173e Extended dbglfs.py to show file data structures Christopher Haster 2023-10-10 14:00:24 -05:00
  • 66e6ce4bfb Enabled no-coalescing file tests, fixed sprout->shrub transition bug Christopher Haster 2023-10-09 20:38:28 -05:00
  • 92e1fafbc4 Merged sprout and shrub carving paths Christopher Haster 2023-10-09 20:15:09 -05:00
  • addaa8fe3e Implemented data coalescing in sprout->shrub conversion Christopher Haster 2023-10-09 12:26:03 -05:00
  • e43b4c7d9a Implemented data coalescing in carveinlined, though it is a bit hacky Christopher Haster 2023-10-09 02:21:20 -05:00
  • da5b6c0751 Reworked lfsr_file_carveinlined a bit, prefer no rm tag where possible Christopher Haster 2023-10-08 16:59:55 -05:00
  • aa64c85317 Deduplicated shrub updates into lfsr_file_carveinlined Christopher Haster 2023-10-07 16:15:42 -05:00
  • 39f417db45 Implemented a filesystem traversal that understands file bptrs/btrees Christopher Haster 2023-10-06 23:21:26 -05:00
  • 881c46f562 Tweaked lfsr_mtree_traversal_next to no longer write the mtree/mroot Christopher Haster 2023-10-05 18:02:35 -05:00
  • 4996b8419d Implemented most of file btree reading/writing Christopher Haster 2023-10-04 17:40:26 -05:00
  • 1e13124091 Tweaked LFS_ASSERT impl to use __builtin_unreachable Christopher Haster 2023-10-05 14:16:00 -05:00
  • 07e977bb43 Progress on file btrees Christopher Haster 2023-10-03 14:38:35 -05:00
  • 52113c6ead Moved the test/bench runner path behind an optional flag Christopher Haster 2023-10-02 00:43:51 -05:00
  • df32211bda Changed -t/--dtree to -f/--files in dbglfs.py Christopher Haster 2023-10-02 00:27:14 -05:00
  • a2aa25aa8e Tweaked dbgrbyd.py to show -1 tag rids Christopher Haster 2023-10-02 00:14:23 -05:00
  • 8c0f99890d Tweaked appendattrs to not need to save changes to rid_ Christopher Haster 2023-10-01 23:54:21 -05:00
  • ef691d4cfe Tweaked rbyd lookup/append to use 0 lower rid bias Christopher Haster 2023-10-01 14:31:54 -05:00
  • 501f8cbe10 Implemented lfsr_file_fruncate Christopher Haster 2023-09-29 17:06:35 -05:00
  • 5adc1f54b7 Implemented and tested lfsr_file_truncate Christopher Haster 2023-09-29 00:58:29 -05:00
  • 981e64f524 Added more seek tests, fixed some annoying POSIX/etc subtleties Christopher Haster 2023-09-28 12:45:32 -05:00
  • 0638b09d18 Switched to using mid to tell which files belong in a compaction Christopher Haster 2023-09-27 15:11:40 -05:00
  • 69993da7e1 Small cleanup of inlined compaction update conditions Christopher Haster 2023-09-27 14:04:10 -05:00
  • a6357e8a5c Renamed test_ftree->files, added fuzz tests, fixed a bug Christopher Haster 2023-09-27 13:55:52 -05:00
  • cbbd77708d Actually made the previous commit work Christopher Haster 2023-09-27 12:31:19 -05:00
  • 58be838916 Tweaked compact to use pre-commit inlined state Christopher Haster 2023-09-27 11:55:25 -05:00
  • 488ba4b650 Fixed mdir estimate during compaction to include shrubs Christopher Haster 2023-09-27 01:45:35 -05:00
  • b008c2af75 Fixed bug where pre-compact commit clobbered inlined files, other tweaks Christopher Haster 2023-09-26 14:27:28 -05:00
  • edc4cb2fa9 Changed TEST_PLS to track number of powerlosses seen by the current test Christopher Haster 2023-09-26 11:17:19 -05:00
  • 582dc5f1b2 Added some tests, quick seek impl, fixed bugs Christopher Haster 2023-09-25 11:58:27 -05:00
  • 0724b9a8c4 Really revamped flushbuffer, now leveraging overwriting grow tags Christopher Haster 2023-09-24 16:33:03 -05:00
  • c2d33a1843 Reworked btree-commit/flushbuffer to incrementally build attrs Christopher Haster 2023-09-24 15:18:02 -05:00
  • dc8dce8f0c Introduced coalesce_size and crystallize_size, deduplicated test cfg Christopher Haster 2023-09-24 02:22:19 -05:00
  • 2b950bb16b Reworked flushbuffer logic to merge neighboring pieces of data Christopher Haster 2023-09-23 23:58:36 -05:00
  • 4334a848a3 Tweaked mdir commit so it handles all inlined file staging Christopher Haster 2023-09-22 23:23:23 -05:00
  • 02ae6050de Changed lfsr_data_t internals, added LFSR_DATA_CAT Christopher Haster 2023-09-22 22:19:37 -05:00
  • da2a4b45f7 Dropped single-letter union variants, prefer descriptive names Christopher Haster 2023-09-22 12:08:08 -05:00