-
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