Commit Graph

2987 Commits

Author SHA1 Message Date
Jeff Becker
28a2d471d6 style nitch 2019-11-29 19:11:14 -04:00
Jeff Becker
44e0e2c034 dont flood the logic queue 2019-11-29 19:11:14 -04:00
Jeff Becker
fba1e47d1c call jobs in logic 2019-11-29 19:11:14 -04:00
Jeff Becker
f5ede2d875 ammend previous commit 2019-11-29 19:11:14 -04:00
Jeff Becker
3489753d5a remove jenky call to logic thread in link server 2019-11-29 19:11:14 -04:00
Jeff Becker
0828307906 fix address mapping bug 2019-11-29 19:11:14 -04:00
Jeff Becker
5188873288 batch and flush 2019-11-29 19:11:14 -04:00
Jeff Becker
8849173112 try async decrypt then verify 2019-11-29 19:11:14 -04:00
Jeff Becker
2852601a28 flush in logic 2019-11-29 19:11:14 -04:00
Jeff Becker
d823d6fa70 only flush when no other jobs are executing 2019-11-29 19:11:14 -04:00
Jeff Becker
9e305c5b30 use lockless queues to gather results of transit traffic work 2019-11-29 19:11:14 -04:00
Jeff Becker
d591394ad2 dont process empty queues 2019-11-29 19:11:14 -04:00
Jeff Becker
e2472d985d process transit hops on flush 2019-11-29 19:11:14 -04:00
Jeff Becker
1a06da9c3d reduce calls in link pump 2019-11-29 19:11:14 -04:00
Jason Rhinelander
d13a3d2b62 Don't flush here; we already have a tick flushing 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
285a9a1dd5 prevent segfault 2019-11-29 19:11:14 -04:00
Jeff Becker
a3a62c34f3 use timer guard for all jobs in debug mode 2019-11-29 19:11:14 -04:00
Jeff Becker
af663d8b10 prune members in timer context 2019-11-29 19:11:14 -04:00
Jeff Becker
11d4760c3d add metrics tracking for logic jobs in debug mode 2019-11-29 19:11:14 -04:00
Jeff Becker
ba0fd223d9 reduce number of jobs we put onto the logic thread 2019-11-29 18:45:06 -04:00
Jeff
f8c6c1379a
Merge pull request #929 from majestrate/increase-logic-queue-size-2019-11-25
make logic job queue 8 times bigger
2019-11-26 13:32:25 -05:00
Jeff Becker
dd48b149ca
make job queue size configurable 2019-11-25 16:30:34 -05:00
Jeff Becker
853108ce6e
make logic job queue 8 times bigger 2019-11-25 16:15:31 -05:00
Jeff Becker
cbb7196b30
fix "zero hop" bug 2019-11-25 11:53:03 -05:00
Jeff
ee40389f05
Merge pull request #916 from majestrate/add-contention-killer-2019-11-14
assorted crap
2019-11-22 16:31:15 -05:00
Jeff Becker
c3858a56df
make it compile 2019-11-22 16:23:21 -05:00
Jeff Becker
34bc3da069
flush quues of other paths 2019-11-22 16:23:20 -05:00
Jeff Becker
6f95fbfece
work in progress 2019-11-22 16:23:20 -05:00
Jeff Becker
ac686a9329
remove valgrind access errors 2019-11-22 16:23:20 -05:00
Jeff Becker
0ec4e583d4
initialize with zeros 2019-11-22 16:23:20 -05:00
Jeff Becker
065b022427
std::move 2019-11-22 16:23:20 -05:00
Jeff Becker
b8f773eb73
use lambda 2019-11-22 16:23:20 -05:00
Jeff Becker
250cfea1e9
remove use of void * in godawful old code from a time before happyness 2019-11-22 16:23:20 -05:00
Jeff Becker
b207db626f
please the gods of valgrind 2019-11-22 16:23:20 -05:00
Jeff Becker
d44d034775
make contention checker templated 2019-11-22 16:23:19 -05:00
Jeff Becker
1fa0a0aab2
make it compile 2019-11-22 16:23:19 -05:00
Jeff Becker
fdbaaa8188
try fixing file log segfault 2019-11-22 16:23:19 -05:00
Jeff Becker
1188763ece
typo fix in release 2019-11-22 16:23:19 -05:00
Jeff Becker
56dce90de9
add trace log level for tracking logic thread jobs 2019-11-22 16:23:19 -05:00
Jeff Becker
eb6d042e73
make sure all calls of logic thread jobs are not having contention 2019-11-22 16:23:18 -05:00
Jeff Becker
d7f09a365d
contention killer 2019-11-22 16:23:18 -05:00
Jason Rhinelander
d3082fffc9 Lower the ev tick interval to 10ms
When there's nothing waiting we wait this long unconditionally, but that
can add a lot of latency across a path.

There are likely better ways to handle this via libuv's run handlers,
but this addresses the latency until we figure that out.
2019-11-22 17:05:51 -04:00
Jason Rhinelander
e0340e86b2 clang-format fixes 2019-11-20 17:45:56 -04:00
Jason Rhinelander
d96d33329b
Merge pull request #912 from majestrate/logic-thread-fix-2019-11-13
fix logic thread behavior
2019-11-19 15:26:35 -04:00
Jeff
8f6a18f411
Merge pull request #915 from notlesh/fix-session-key-mismatch-2019-11-19
Fix #911: Drop new inbound IWP sessions when the first packet can't be handled
2019-11-19 14:25:49 -05:00
Jason Rhinelander
6524563d33
Merge pull request #897 from majestrate/bencode-seek-for-version-2019-11-03
seek for version and set it before deserializing
2019-11-19 15:24:07 -04:00
Stephen Shelton
b5b8cf0745 Reduce log level of IWP session issues as they may be encountered frequently and normally 2019-11-19 12:17:34 -07:00
Stephen Shelton
9eed243346
Merge pull request #860 from notlesh/null_mutex_clarity
Null mutex clarity (via comments / log statement)
2019-11-19 11:19:44 -07:00