Jeff Becker
acecb23eb3
make libuv event loop logic queue size configurable.
...
remove logic constructor that is no-op.
add constant for default logic queue size
add constant for transit hop queue size
2020-06-01 09:17:44 -04:00
Jeff Becker
c47a210302
remove a std::move that prevents copy elision
2020-05-26 14:04:43 -04:00
Jeff Becker
9298313066
use std::move
2020-05-24 08:21:04 -04:00
Jeff Becker
1230b81517
make format
2020-05-23 16:07:21 -04:00
Jeff Becker
b8d262573a
use std::vector instead of thrashing heap with allocation
2020-05-23 16:07:20 -04:00
Jeff Becker
3eb006f78c
iwp/libuv cleanup: remove llarp_pkt_list and all users of it as it's broke
2020-05-23 16:07:19 -04:00
Jeff Becker
f04407f183
use only 1 uv_async_t for event loop wakeups
...
flush logic calls in there too as this was causing unit tests to hang
2020-05-15 08:36:38 -04:00
Stephen Shelton
0b54087689
Begin implementing SockAddr
2020-05-08 11:23:21 -06:00
Stephen Shelton
aee96e53a3
Refactor Addr -> IpAddress/SockAddr
2020-05-06 14:38:44 -06:00
Stephen Shelton
273270916e
The Great Wall of Blame
...
This commit reflects changes to clang-format rules. Unfortunately,
these rule changes create a massive change to the codebase, which
causes an apparent rewrite of git history.
Git blame's --ignore-rev flag can be used to ignore this commit when
attempting to `git blame` some code.
2020-04-07 12:38:56 -06:00
Jeff
d3091cf9fc
Merge pull request #1167 from tewinget/tooling
...
RouterHive initial PR
2020-04-07 13:13:02 -04:00
Jeff Becker
1e434c03f8
cleanup
2020-03-16 10:04:33 -04:00
Jeff Becker
d1f8752b7c
fix memleak in jsonrpc
...
llarp_tcp_acceptor ticker wasn't being called so connections where not
being cleaned up
2020-03-16 09:25:46 -04:00
Thomas Winget
84a1d7dbcc
clang format.......
2020-03-06 20:20:11 -05:00
Thomas Winget
a58a8c9a61
hive.py now defaults to 1000 relays because f your box.
...
also check for error on uv_async_init...
may want to `ulimit -Sn $(ulimit -Hn)`...
2020-03-03 19:57:09 -05:00
Jeff Becker
d2d109e92c
llarp_time_t is now using std::chrono
2020-02-24 15:25:03 -05:00
Jeff Becker
7aa1b2c27c
monotonic time and run testnet at 20% realtime
2020-01-23 12:14:25 -05:00
Jeff Becker
c6d77e72f2
fix up tcp connection logic
2020-01-07 13:04:12 -05:00
Jeff Becker
989146f63a
handle write failure
2020-01-07 13:03:58 -05:00
Jeff Becker
c38c055488
return result
2020-01-07 13:03:53 -05:00
Jeff Becker
42f721d691
don't queue on full write queue
2020-01-07 13:03:47 -05:00
Jeff Becker
6d42b5f997
reduce logic calls
2020-01-07 13:03:41 -05:00
Jeff Becker
4126d307b3
dont close timers on closeall
2019-12-27 05:54:57 -05:00
Jeff Becker
8b8d636ded
make format
2019-12-22 09:16:28 -05:00
Thomas Winget
55b44cfc13
fix derp nested function call and derp merge error
2019-12-18 13:35:01 -05:00
Thomas Winget
71bb0dd520
implement timers using libuv
...
So far only a bit of the code using timers has been modified to use
the new libuv-based timers. Also only the non-Windows case has been
implemented. Seems to be working though, so it's a good time to commit.
2019-12-18 13:11:13 -05:00
Jeff Becker
c4f08e5145
finish remaining changes
2019-12-11 16:18:47 -05:00
Jeff Becker
95eee4081a
trypushback
2019-12-10 11:49:32 -07:00
Jeff Becker
cdfdfa1068
use thread queue
2019-12-10 11:49:32 -07:00
Jeff Becker
8455d5d1cf
more cleanup
2019-12-10 11:49:32 -07:00
Jeff Becker
cec36b62b5
make logic and net thread one in the same
2019-12-10 11:49:32 -07:00
Jeff Becker
847ab3a47e
make it compile
2019-12-03 16:09:22 -05:00
Jeff Becker
1f83fdb190
fix previous commit
2019-12-03 12:54:23 -05:00
Jeff Becker
3c85691f81
limit calls to pumpll such that it gets called fast enough but not too much under load
2019-11-29 19:11:14 -04:00
Jason Rhinelander
5d8f547d33
Set tun to non-blocking
...
If we can't write to it we want failure, not blocking.
2019-11-29 19:11:14 -04:00
Thomas Winget
6d506302dc
Show number of logic thread jobs in debug builds
2019-11-29 19:11:14 -04:00
Thomas Winget
6acf7bff7e
Track and log UV event loop ticks in debug builds
2019-11-29 19:11:14 -04:00
Jeff Becker
6f95fbfece
work in progress
2019-11-22 16:23:20 -05:00
Jeff Becker
56dce90de9
add trace log level for tracking logic thread jobs
2019-11-22 16:23:19 -05:00
Jeff Becker
d7f09a365d
contention killer
2019-11-22 16:23:18 -05:00
Jeff Becker
7ee026fa50
make path builds work again
2019-11-05 11:58:53 -05:00
Jeff Becker
e25356c035
use <= not ==
2019-11-03 14:53:41 -05:00
Jeff Becker
89e5b6b4cc
try fixing leak
2019-11-03 14:38:34 -05:00
Jeff Becker
2134355a3a
fix event loop tcp connections so they are thread safe
2019-10-28 10:15:36 -04:00
jeff
788bc0f912
Merge remote-tracking branch 'upstream/dev' into ed25519-signing
...
also stop using libuv's uv_loop_new as it is deprecated
2019-10-16 07:45:52 -04:00
jeff
b7601a6236
call read handler in logic thread
2019-10-11 07:47:21 -04:00
jeff
3c1d5518d8
fix windows port and make it compile
2019-10-02 09:06:14 -04:00
jeff
14c9ef15ed
try calling stuff in logic thread from event loop
2019-09-16 06:21:12 -04:00
Jeff Becker
e3bb59707e
more
2019-09-05 17:28:50 -04:00
Jeff Becker
4bf6882c8a
more async cryptography
2019-09-05 13:39:09 -04:00