aboutsummaryrefslogtreecommitdiff
path: root/changes
diff options
context:
space:
mode:
authorDavid Goulet <dgoulet@torproject.org>2018-04-26 14:20:31 -0400
committerNick Mathewson <nickm@torproject.org>2018-04-27 09:28:00 -0400
commit05d314f888dd96840d92fbcc513974487485f4cb (patch)
treeb4f8c5d28bbedab890475bbdbd4fe517c7f6cac1 /changes
parent302908657f492f064f9bddac794db477f53ab958 (diff)
downloadtor-05d314f888dd96840d92fbcc513974487485f4cb.tar.gz
tor-05d314f888dd96840d92fbcc513974487485f4cb.zip
main: Add mainloop callback event flags
Implement the ability to set flags per events which influences the set up of the event. This commit only adds one flag which is "need network" meaning that the event is not enabled if tor has disabled the network or if hibernation mode. Signed-off-by: David Goulet <dgoulet@torproject.org>
Diffstat (limited to 'changes')
-rw-r--r--changes/ticket25376_2576210
1 files changed, 10 insertions, 0 deletions
diff --git a/changes/ticket25376_25762 b/changes/ticket25376_25762
new file mode 100644
index 0000000000..b3ebf56d3b
--- /dev/null
+++ b/changes/ticket25376_25762
@@ -0,0 +1,10 @@
+ o Major feature (main loop, CPU usage):
+ - Previously, tor would enable at startup all possible main loop event
+ regardless if it needed them. For instance, directory authorities
+ callbacks were fired up even for client only. We have now refactored this
+ whole interface to only enable the appropriate callbacks depending on what
+ are tor roles (client only, relay, hidden service, etc.). Furthermore,
+ these events now depend on DisableNetwork or the hibernation state in
+ order to enable them. This is a big step towards reducing client CPU usage
+ by reducing the amount of wake ups the daemon does. Closes ticket 25376
+ and 25762.