Commit Graph

972 Commits

Author SHA1 Message Date
barter-simsum
f6213bd1ce pma: minor cleanup 2024-01-10 19:15:34 -05:00
barter-simsum
aa21d14739 pma: remove frontier and only rely on state->file_size_p 2024-01-10 18:49:55 -05:00
barter-simsum
19fd0e4fb4 pma: file extension - to be revised 2024-01-10 18:27:31 -05:00
Edward Amsden
a96c669b22
Merge pull request #193 from urbit/jon/fix-rev
jets: fix jet_rev
2023-12-20 11:05:22 -06:00
Edward Amsden
c6a45aed9d
Merge pull request #143 from urbit/eamsden/integrate-pma
Integrate PMA
2023-12-20 09:35:31 -06:00
barter-simsum
4c8851c385 pma: simpler pending freelist merge. fixes use after free 2023-12-20 09:37:04 -05:00
Edward Amsden
4080f50145 pma: format 2023-12-20 00:20:10 -06:00
Edward Amsden
3ae877f655 pma: lint and c warnings cleanup 2023-12-20 00:16:55 -06:00
Edward Amsden
58c49bc5e1 pma: dont assert loidx != in _bt_dirty, it could well be! 2023-12-19 21:36:27 -06:00
Edward Amsden
86a8922e0f pma: make sure unifying equality dirties for unifying a cell in the PMA, not just an indirect atom 2023-12-19 20:56:33 -06:00
Edward Amsden
feeb278794 pma: lots of c-side bugfixes 2023-12-19 20:55:57 -06:00
Edward Amsden
2c1f1fa285 Merge branch 'status' into eamsden/integrate-pma-tmp 2023-12-19 18:38:40 -06:00
barter-simsum
2762872a94 pma: wip test revisions 2023-12-19 17:48:04 -05:00
barter-simsum
0dac274a63 pma: minor bug fixes 2023-12-19 17:47:57 -05:00
barter-simsum
232a5bdff5 pma: freelist restoration using *_record_alloc and insertdat bugfix 2023-12-19 16:29:03 -05:00
Jonathan Paprocki
16c91e96d9 jets: rev PR comment 2023-12-19 13:56:46 -05:00
Jonathan Paprocki
24ce412a1f jets: fix jet_rev 2023-12-19 12:58:37 -05:00
Edward Amsden
f601a61827 pma: clean up a bunch of warnings (not all though) 2023-12-19 09:56:34 -06:00
barter-simsum
9a74aff3e8 pma: significant revisions to freelist logic 2023-12-18 22:02:58 -05:00
Edward Amsden
7954758e43
Merge pull request #192 from urbit/eamsden/no-memory-checks-in-ci
ci: don't enable check_all feature for ares crate
2023-12-18 19:09:06 -06:00
Edward Amsden
d7a42cdf92 ci: don't enable check_all feature for ares crate 2023-12-18 17:46:29 -06:00
Edward Amsden
8c92c68c5f
Merge pull request #191 from urbit/pq/add-warning-for-check-all
add a warning to discourage use of check_all feature flag
2023-12-18 17:43:56 -06:00
Philip Quirk
760b317a3e add a warning to discourage use of check_all feature flag 2023-12-18 13:48:20 -06:00
barter-simsum
c0e68a27f6 pma: btest ephemeral structure equality tests 2023-12-17 20:05:03 -05:00
Edward Amsden
e39e1b7523
Merge pull request #188 from urbit/as/exit
serf: implement %live %exit
2023-12-17 15:24:11 -06:00
Alex Shelkovnykov
be96c495a8 serf: implement %live %exit 2023-12-17 14:00:19 -03:00
barter-simsum
3a6ed42054 pma: depth passed to _flist_read2 should be 1 not 0 2023-12-15 19:49:35 -05:00
barter-simsum
2c016500ac pma: restore mmaps before regenerating ephemeral state 2023-12-15 19:24:37 -05:00
barter-simsum
9a8229837d pma: initialize state->which to 0 in bt_state_open 2023-12-15 18:41:50 -05:00
barter-simsum
0ec984663c pma: revisions to codepath handling opening of existing pma 2023-12-15 18:38:52 -05:00
barter-simsum
0496de5f4c pma: testing out a mmap call /before/ reading header 2023-12-15 16:01:34 -05:00
Edward Amsden
012a7bac22
Merge pull request #180 from urbit/sigilante/remove-doublejam
serf:  removal of snapshotting
2023-12-15 13:41:18 -06:00
Edward Amsden
5a72c6a932
Merge pull request #183 from urbit/eamsden/stop-for-debug-crate-feature
main: add stop_for_debug feature to stop Ares when it starts for a debugger to attach
2023-12-15 13:39:22 -06:00
Edward Amsden
011d452156 main: add stop_for_debug feature to stop Ares when it starts for a debugger to attach 2023-12-15 13:12:05 -06:00
Edward Amsden
820b1ac57a main: add stop_for_debug feature to stop Ares when it starts for a debugger to attach 2023-12-15 12:27:17 -06:00
Edward Amsden
f092c482ee pma: format 2023-12-15 11:17:08 -06:00
Edward Amsden
dd814b3e1f pma: add crate feature to control debugging printfs 2023-12-15 11:16:38 -06:00
Sigilante
a4d67e01fd serf: placate linter 2023-12-15 10:39:02 -06:00
Edward Amsden
3acf8e74c1 serf: ensure locals are preserved and top frame flipped after PMA save 2023-12-15 10:00:38 -06:00
barter-simsum
02b1ae3dd2 pma: btest.c changes 2023-12-15 06:36:53 -05:00
barter-simsum
66aaa255f7 pma: fix freelist node size calculation in _mlist_insert 2023-12-15 06:36:30 -05:00
barter-simsum
031e583c3c pma: fix DPRINTF in bt_malloc 2023-12-15 05:38:35 -05:00
barter-simsum
965865da13 pma: mmap freespace ahead of first node partition 2023-12-15 03:24:42 -05:00
barter-simsum
40a04ec8ab pma: _bt_printnode print to stderr 2023-12-15 01:19:28 -05:00
Edward Amsden
a37cf3e779 pma: when persisting hamt check if buffer already in PMA 2023-12-15 00:15:40 -06:00
barter-simsum
ff204263ff pma: misc fixes
- primarily fixes a bug in _mlist_insert and _pending_flist_insert
- also updates some tests
- disables node data printing on _bt_insertdat with DEBUG_PRINTNODE macro
2023-12-15 00:50:26 -05:00
Edward Amsden
bdccac7ff2 pma: fixup of global static PMA 2023-12-14 22:17:25 -06:00
Edward Amsden
8fb0953247 pma: dirty in unifying equality
This changes the PMA to be a static global instead of a threaded-through handle.
We use a OnceLock to enforce one-time-only opening of the PMA. There is
no public PMA type any more, just a collection of module-level methods
which act through the global reference.

This is consistent with the assumptions of the underlying C code, that
there will be only one PMA open in a process, and avoids the need to
thread the PMA to unifying equality calls.
2023-12-14 21:42:31 -06:00
Edward Amsden
caeea6ec2d unifying equality: move to own module 2023-12-14 18:08:55 -06:00
barter-simsum
a509c2fabe pma: even more msync/mprotect changes 2023-12-14 16:40:42 -05:00