Commit Graph

44 Commits

Author SHA1 Message Date
Jeff Becker
16c7e7dd33 fix unit tests 2019-12-19 10:25:52 -05:00
Thomas Winget
f4c9e09d44 remove obsolete timer-related code 2019-12-18 19:05:33 -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
8455d5d1cf more cleanup 2019-12-10 11:49:32 -07:00
Jeff Becker
b286230d40 limit timer calls 2019-12-10 11:49:32 -07:00
Jeff Becker
35672e6d8c call timers with queuer if set 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
c9d38d421b clang fixes 2019-12-10 11:49:32 -07:00
Jeff Becker
c5f198cfa1
disable absl decorator in release 2019-12-07 14:22:10 -05:00
Jeff Becker
2eabe98d9b
add systemd watchdog if enabled on compile time 2019-12-07 14:21:26 -05:00
Jeff Becker
8ceb20452a
add absl annotations 2019-12-07 07:28:43 -05:00
Jeff Becker
fe6783eef6
squash possible race condition 2019-12-07 07:19:26 -05:00
Jeff Becker
7d5fd132c8
make format 2019-12-03 12:55:24 -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
740460318a Die if job queue full
If this happens it's a pretty serious error; if someone is hitting it
occassionally it's better to know and update their queue size (and if it
is a runaway situation lokinet doesn't come back anyway).
2019-11-29 19:11:14 -04:00
Jeff Becker
fba1e47d1c call jobs in logic 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
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
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
d44d034775
make contention checker templated 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
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
Stephen Shelton
46fe64c2e6 make format (and git commit --amend to re-trigger CI) 2019-11-19 10:07:27 -07:00
Jeff Becker
168d25f244
add warning when trying to queue onto full logic thread 2019-11-14 12:18:20 -05:00
Jeff Becker
f16c9f9b5d
iot seems that logic thread didn't work the way i remember it should
make logic work the way it should
2019-11-14 10:06:53 -05:00
Jeff Becker
3c8e148372
prevent double free crap with shared_ptr 2019-11-13 18:16:34 -05:00
Stephen Shelton
a3c48e22f3
Even more clarity to NullMutex comments 2019-10-11 13:50:50 -06:00
Stephen Shelton
36ef0954ec Add comments to NullMutex implementation to express intent 2019-10-10 23:26:55 -06:00
jeff
605da68e15 use absl optional 2019-10-02 09:17:12 -04:00
jeff
da9437d0cf don't need that 2019-10-01 11:05:37 -04:00
Jeff Becker
327c545530
finish multithread cryptography first pass 2019-09-16 12:12:05 -04:00
jeff
14c9ef15ed try calling stuff in logic thread from event loop 2019-09-16 06:21:12 -04:00
jeff
ac2a2aed1d gut libutp and finish making things compile and pass tests 2019-09-12 14:19:25 -04:00
Jeff Becker
e3bb59707e
more 2019-09-05 17:28:50 -04:00
Jeff Becker
ab64c0d013
Merge remote-tracking branch 'micheal/abort_mutex' 2019-09-04 07:58:48 -04:00
Jeff Becker
1adae338ce
Merge remote-tracking branch 'origin/master' 2019-09-04 07:58:02 -04:00
Michael
23d76e3600
Abort when a null mutex is locked from a different thread (in debug mode only) 2019-09-03 23:25:37 +01:00
Michael
edd0ec398f
Move thread stuff to subdirectory 2019-09-03 20:52:28 +01:00