Commit Graph

338 Commits

Author SHA1 Message Date
Joe Bryan
7ce31c1a59 threads output file pointer through memory marking and printing 2019-01-29 21:56:35 -05:00
Joe Bryan
f544db84e7 refactors and clarifies heuristic printing of an allocation box 2019-01-29 19:14:39 -05:00
Joe Bryan
74787c5eb8 refactors memory leak printfs in u3a_sweep() 2019-01-29 17:49:41 -05:00
Joe Bryan
de8abeac69 refactors libnoun memory marking, adds optional printfs 2019-01-29 17:20:31 -05:00
Ted Blackman
86ccb0b173 remove old version of u3r_mug() 2019-01-15 21:09:05 -08:00
Joe Bryan
e655b07ecb adds assertions to protect u3r_mug against stack overflow 2019-01-15 23:57:45 -05:00
Joe Bryan
76fa248700 adds a u3_none explicit bottom stack frame to u3r_mug 2019-01-15 23:49:03 -05:00
Ted Blackman
6d70ad19dd WIP simplified conditionals, still dies, appears stateful? 2019-01-15 20:03:24 -08:00
Ted Blackman
e815ad4be7 WIP refactored but still dying 2019-01-15 19:42:40 -08:00
Ted Blackman
63ccf3ad7e WIP still dying 2019-01-15 19:29:11 -08:00
Ted Blackman
b105e5e6db WIP testing and printing 2019-01-15 18:58:28 -08:00
Ted Blackman
e22884ef7e WIP compiles but crashes 2019-01-15 18:08:21 -08:00
Joe Bryan
b17702072c
Merge pull request #1131 from urbit/proxy-retouch
tcp proxy cleanup
2019-01-11 11:12:15 -05:00
Joe Bryan
d5e51fe6cc
Merge pull request #1129 from urbit/mug-retouch
corrects u3r_mug_chub and u3r_mug_words
2019-01-10 22:16:54 -05:00
Joe Bryan
a89db3ccc3 simplifies u3r_mug_words bytewidth loop 2019-01-10 22:10:44 -05:00
Joe Bryan
cd757b39b9 revises u3r_mug_chub and u3r_mug_words to match u3r_mug_bytes 2019-01-10 18:47:16 -05:00
Joe Bryan
46da7e6739 backports u3r_chubs from cc-release 2019-01-10 13:15:01 -05: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
Joe Bryan
8807423b01 refactors u3r_mug* and some call sites 2019-01-08 22:45:02 -05:00
Joe Bryan
1a40bc70b9 Revert "adds temporary gum_w hash slot to u3_noun"
This reverts commit cd96ad658d.
2019-01-08 22:31:24 -05:00
Joe Bryan
421781652d updates arvo interface to use new axes 2019-01-08 18:17:45 -05:00
Joe Bryan
1d1a259f31 removes old u3r_mug*, switches u3r_mur* to u3r_mug* 2019-01-08 18:13:25 -05:00
Joe Bryan
de3dcee7d5 memoize u3r_mur in temporary gum_w 2019-01-07 23:31:37 -05:00
Joe Bryan
cd96ad658d adds temporary gum_w hash slot to u3_noun 2019-01-07 23:31:37 -05:00
Joe Bryan
1974eca515 uses u3r_mur_bytes in all other u3r_mur* functions 2019-01-07 22:24:42 -05:00
Joe Bryan
30c55e88ab refactors non-zero hash iteration in u3r_mur* 2019-01-07 21:59:25 -05:00
Joe Bryan
f0fdfe118f uncomments/fixes/finishes u3r_mur* functions 2019-01-07 21:57:48 -05:00
Joe Bryan
916223326c don't abort on bail:fail, but continue with crash handling 2018-12-13 23:26:17 -05:00
Joe Bryan
7a172f6860 renames event-timing, adds build option to enable 2018-12-13 20:03:19 -05:00
Joe Bryan
abe21628d5 Merge branch 'release-candidate' into build-compat
* release-candidate: (27 commits)
  Style nits
  [CI] Update arvo
  Add a jet for +del:by
  fit UTF-8 tape bug
  calls u3_raft_work on leader promotion (for eager restart effects)
  removes unused u3v_nick (effect traversal) and u3v_http_request
  refactors event replay, removing unnecessary effect traversal
  refactors event poke, removing unnecessary effect traversal
  trailing whitespace
  adds and corrects some raft comments
  separates effects and persistence
  updates terminal to always 32 bytes on read
  updates ames to always allocate 2K bytes on read
  set alarm for behn timers
  updates u3_raft_work() to be async, adds sync u3_raft_play()
  synchronously processes each event singly
  handles effect/event pairs singly while iterating queue
  factor out raft_pump()
  factored out _raft_crop() and _raft_poke()
  uncouple roe mutation
  ...
2018-12-13 17:22:04 -05:00
Joe Bryan
a9f912cf0b removes preprocessor errors in trace.c on openbsd 2018-12-13 15:49:02 -05:00
Joe Bryan
f18d6cbc10 removes unused u3v_nick (effect traversal) and u3v_http_request 2018-12-12 00:40:04 -05:00
Joseph Bryan
a2a6b7e810 disables tracing exit printf when tracing is off 2018-12-10 21:34:00 -05:00
Joe Bryan
b60e10f149 corrects profiling struct initializations 2018-12-10 12:02:16 -05:00
Joe Bryan
a3bef0f23a prevents 0-byte allocations in u3i_molt() and u3r_mean() 2018-12-08 20:09:23 -05:00
Joe Bryan
0d5beaf774 fixes duplicate assignment in u3v_nick() 2018-12-08 20:09:23 -05:00
Joe Bryan
21224cc359 fixes memory leak in _cj_je_fsck() 2018-12-08 20:09:23 -05:00
Joe Bryan
de29eb602c
Merge pull request #1085 from urbit/boot-pill-userspace
boot with lifecycle-formula, userspace from pill
2018-12-05 13:50:23 -05:00
Elliot Glaysher
36f2152e61 Move more chars. 2018-12-04 16:20:22 -08:00
Elliot Glaysher
ee38b88188 Cleanup 2018-12-04 15:59:33 -08:00
Elliot Glaysher
4a53ebc6c5 Cleanup 2018-12-04 14:48:26 -08:00
Joe Bryan
2ed422e11f boots with lifecycle formula, without persistent kernel formula
removes now-unused vortex functions
2018-12-04 02:54:06 -05:00
Elliot Glaysher
8b9680072a Add support for trace_event files.
This adds a -j parameter which writes traces of your Urbit's function call
stack to a json file, readable by Chrome's about://tracing or the standalone
trace-viewer webapp.
2018-12-01 15:54:55 -08:00
Joe Bryan
941f2f72bd removes u3v_keep, updates arvo axes 2018-11-26 17:57:01 -05:00
Elliot Glaysher
356f9fc9ac Shrink preallocation of cells from 262.144 cells to 4.096
Everytime a new road is constructed, a new bank of cells is
allocated and initialized. This lead to over three megabytes of
memory being allocated and accessed on each road change. This takes
more than 1ms to complete.

Road changes occur on each virtualization call. Each +soft happens
virtualized; so each +soft call incurs a 1ms delay. The metavase
machinery does at least two (and usually three) softs per card move
meaning sending a card move through arvo usually incurs a 3ms delay.

Before this patch, the following line took six seconds to execute.
Now it is imperceivable:

```
~:(turn (gulf 0 10.000) |=(a=@ud (mule |.(a))))
```
2018-11-23 13:05:39 -08:00
Paul Driver
9104ad2acb reap call sites before reaping the warm dashboard
if the warm dashboard is reaped before call sites, the activation
(and thus the label inside the activation) can be freed (during u3h_put)
while a call site in the junior still points to the label (but doesn't hold
a reference to it, since it is on a senior road). trying to take that label
during call site reap then results in a bail: foul.

the solution is to always reap call sites before reaping the warm dashboard.
2018-11-20 11:40:11 -08:00
Robert
1c97747e7c updates boot printfs 2018-11-16 15:40:33 -08:00
Benjamin Summers
5304a7f255 Fix bail_fail on &33:~ 2018-11-13 16:22:49 -08:00
Benjamin Summers
fa576b00d7 Implemented u3t_boff for Linux. 2018-11-12 12:20:32 -08:00
Paul Driver
55f94d6818 fix reference handling error in _n_reap() 2018-11-09 11:53:14 -08:00