Commit Graph

84 Commits

Author SHA1 Message Date
Joe Bryan
9ef6de4bcc Merge branch 'master' into hotfix
* master:
  refactors u3m_reclaim, plugging memory leaks
  reclaim memory on kernel reset
  reclaim memory on restart
  adds u3m_reclaim to clear persistent caches in vere
  adds -Dmemory-log=true build option to save |mass output to a file
  threads output file pointer through memory marking and printing
  [CI] run |mass after +test
  fixes |mass, unifying the implementation with u3m_grab()
  refactors and clarifies heuristic printing of an allocation box
  adds comment explaining u3a_minimum
  refactors memory leak printfs in u3a_sweep()
  refactors libnoun memory marking, adds optional printfs
2019-01-30 15:11:31 -05:00
Ted Blackman
5773b9d9f4 cleaned up boot playback prints 2019-01-30 00:55:53 -08:00
Ted Blackman
b118cefef3 replay most recent event too 2019-01-29 23:07:52 -08:00
Joe Bryan
98f59f6d85 reclaim memory on restart 2019-01-29 22:35:47 -05:00
Ted Blackman
56049e2246 @joemfb review comments 2019-01-29 00:05:23 -08:00
Isaac Visintainer
7dcfbfd55f fixed bug with event header size 2019-01-28 18:49:55 -08:00
Isaac Visintainer
bb258a5b66 - stuck event playback in else block
- store new event log size correctly
- minor code cleanup
2019-01-28 17:20:14 -08:00
Isaac Visintainer
079b87cbd6 added _sist_rest_nuu for g -> h log format conversion 2019-01-28 15:08:53 -08:00
Ted Blackman
055ae27d66 replay one event at a time 2019-01-24 23:59:02 -08:00
Joe Bryan
521d165775
Merge pull request #1147 from mrdomino/libent
Use libent for getentropy
2019-01-16 14:31:47 -05:00
Jōshin
30b616dd8b Use libent for getentropy 2019-01-16 09:06:12 -08:00
Ted Blackman
e22884ef7e WIP compiles but crashes 2019-01-15 18:08:21 -08:00
Jōshin
3e7d344c01 Minor file-head cleanup
I removed anything that was in portable.h, specified proper path names,
and removed some now-wrong (?) public domain notices.
2019-01-13 22:42:00 -08:00
Ted Blackman
c2ebf77ae2 Fix u3_dawn_come() call signature and call sites 2019-01-11 17:53:07 -08:00
Joe Bryan
0ee959b9e7
Merge pull request #1122 from mrdomino/c3-getentropy
c3_rand cleanup
2019-01-11 13:17:04 -05:00
Joe Bryan
dc8e8f36c4 disables inconsistent event-log validation step on replay 2019-01-10 22:22:25 -05:00
Robert
85c697f87d makes boot message clearer 2019-01-10 15:23:37 -08:00
Joe Bryan
d8617b20fe Merge branch 'release-candidate' into boot-messages
* release-candidate: (156 commits)
  refactors u3r_mug* and some call sites
  corrects +muk jet comment
  [CI] updates pinned arvo commit
  removes aliases for +hor and +vor
  [CI] updates pinned arvo commit
  Revert "adds pristine jet copies (hash-order, containers, compiler)"
  Revert "adds staged jet headers and dashboard declarations, renames everything"
  Revert "adds temporary gum_w hash slot to u3_noun"
  Revert "jets u3r_mur"
  [CI] updates pinned arvo commit
  [CI] ctrl-x out of :talk
  renames *_vor to *_mor
  replaces calls to u3qc_hor with u3qc_gor
  updates arvo interface to use new axes
  removes +hor jet, sets *_hor to point to *_gor
  removes old u3r_mug*, switches u3r_mur* to u3r_mug*
  sets u3qc__stage_hor to point to u3qc__stage_gor
  sets u3r__stage_mug to point to u3r_mur
  jets u3r_mur
  memoize u3r_mur in temporary gum_w
  ...
2019-01-09 20:33:45 -05:00
Jōshin
a8c19d9bae c3_rand cleanup
This should work on Linux since kernel 3.17, OS X since 10.12, OpenBSD
since 5.6, and FreeBSD since 12.0. It also introduces no external
dependencies. Note that getentropy should only be called with at most
256 bytes or it will return EIO. The getrandom variant on Linux doesn't
check for this. If called with len > 256, it's allowed to produce a
short read if it gets interrupted. This should show up as an error, so
everything's fine.
2019-01-09 09:15:41 -08:00
Joe Bryan
ef8cb85ad4
Merge pull request #1123 from urbit/murmug
switch u3r_mug from FNV to Murmur3
2019-01-09 01:47:47 -05:00
Joe Bryan
8807423b01 refactors u3r_mug* and some call sites 2019-01-08 22:45:02 -05:00
Jōshin
67c0b7b39b Clean up allocator defs
- Condense the allocator section in defs.h and make it match the
  surrounding style.

- Use real calloc in c3_calloc. Some guy on the internet says
  calloc can be faster than malloc since the OS may not actually
  need to call memset.

- Replace calloc calls in vere code with c3_calloc.

Note that I left the c3_calloc definition as-is (i.e., not taking
a count argument). I was going to change it, but it seems like
count is 1 at all call sites. If it's ever used with count != 1,
I'd be in support of changing it, fwiw.
2019-01-02 11:23:06 -08:00
Joe Bryan
0f0f1db51d updates passcode entry to handle EOF, refactors 2018-12-28 00:21:17 -05:00
Jōshin
ceba869a91 Eliminate extra c3_rand call 2018-12-27 17:30:18 -08:00
Jōshin
fbd5d4e2ad Capture errors within uH / uL 2018-12-27 17:22:50 -08:00
Jōshin
c7d2256e03 Use c3_fpurge 2018-12-27 17:22:46 -08:00
Jōshin
69f4157588 Fixes the build on OpenBSD
Tested with stock clang on an OpenBSD 6.4 amd64 VM. Unfortunately
clang (and also gcc from ports) was not pleased about c3_rand,
whereas this was fine before. I have no idea what changed, but it
works now.
2018-12-14 22:51:02 +00:00
Joe Bryan
5a397fef43
Merge pull request #1107 from urbit/crypt-log
re-enable event-log encryption
2018-12-13 19:55:22 -05:00
Joe Bryan
62960bbc28 enables event-log encryption 2018-12-12 01:19:34 -05:00
Joe Bryan
a848191c50 refactors event replay, removing unnecessary effect traversal 2018-12-12 00:39:31 -05:00
Ted Blackman
d8b7068345 updates u3_raft_work() to be async, adds sync u3_raft_play() 2018-12-11 17:13:55 -05:00
Joe Bryan
675fd01607 disables unused _sist_text() 2018-12-10 12:00:45 -05:00
Joe Bryan
295affdaad fixes memory leak in _sist_cask() 2018-12-08 20:09:23 -05:00
Joe Bryan
65ce838b26 Merge branch 'release-candidate' into single-home
* release-candidate:
  Write a jet for +sort
  remove hold
  removed more superfluous lines
  removed superfluous lines
  moving one brace
  using u3x functions
  braces constants
  added shape checks
  Update pin-arvo-commit.txt
  Update pin-arvo-commit.txt
  type variance bug fix
  moves ethereum-integrated pre-boot validation to vere/dawn
2018-12-06 18:33:28 -05:00
Ted Blackman
9cff56962a
Merge pull request #1087 from belisarius222/move-dawn
moves ethereum-integrated pre-boot validation to vere/dawn
2018-12-06 13:09:11 -08:00
Joe Bryan
591995934a single-home arvo with %whom 2018-12-05 16:02:43 -05:00
Joe Bryan
511ff89f80 add entropy to arvo with %wack 2018-12-05 15:52:16 -05:00
Joe Bryan
384a2a1555 moves ethereum-integrated pre-boot validation to vere/dawn 2018-12-05 03:06:18 -08:00
Joe Bryan
bf4e7910dc loads initial filesystem from pill, -A optional for all ships 2018-12-04 02:54:12 -05:00
Joe Bryan
bc30fb282b automatically process events on restart 2018-11-26 16:34:49 -05:00
Joe Bryan
a77f6401a7 updates %behn to use effects instead of u3v_keep polling 2018-11-26 03:08:14 -05:00
Robert
1c97747e7c updates boot printfs 2018-11-16 15:40:33 -08:00
Joe Bryan
0148b101e7 removes -X ("skip last event") 2018-11-16 17:52:47 -05:00
Joe Bryan
c072605792 restores -H for overriding contract/snapshot ames domains 2018-11-08 23:13:19 -05:00
Joe Bryan
db46b2d798 make implicit -S persist across fake-keyed restarts 2018-11-06 11:16:58 -05:00
Joe Bryan
35bfb49086 Merge branch 'release-candidate' into ames-eth-keys
* release-candidate: (21 commits)
  zinc gate casting bug
  Bug fix for metal-wrapping runes
  converting iron and zinc cores to lead bug
  8. updates nock 4K spec
  7. updates %5 to require two subformulas (nock 4K)
  6. implements edit at %10 (nock 4K)
  5. removes %13 and %14 (nock 4K)
  4. emits %11 and %12 (nock 4K)
  3. implements hint at %11 and wish at %12 (nock 4K)
  2. removes %10 and %11 (nock 4K)
  1. duplicates hint (%10) and wish (%11) at %13 and %14 (nock 4K)
  Disable terminal echo on passcode entry
  increased inbound request and ward timeouts to 5 min
  mutating edit
  bail in _n_edit on invalid path
  avoid allocating an atom for _cj_bash
  bypass mat and chop directly in jam
  small memory leak for large edits
  disable hike jet, kill errant and unneccessary mutate-context-sample opcodes
  bugfixes
  ...
2018-11-01 00:16:20 -04:00
Philip Monk
345459e931
allow booting from ethereum snapshot 2018-10-31 15:43:55 -07:00
Joe Bryan
d6b9d6088c sets default pre-boot validation ethereum gateway to ropsten infura 2018-10-29 21:52:46 -04:00
Joe Bryan
f0efa1ac12 includes block number and ethereum gateway url in boot event 2018-10-29 15:23:17 -04:00
Joe Bryan
770207e186 pins pre-boot validation eth rpc requests to a single block 2018-10-29 14:01:45 -04:00