Commit b8c50eab authored by Nick Mathewson's avatar Nick Mathewson 🦀
Browse files

Add a subsystem for our threading support

parent 178c1821
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -1397,7 +1397,6 @@ tor_run_main(const tor_main_configuration_t *tor_cfg)
  init_protocol_warning_severity_level();

  update_approx_time(time(NULL));
  tor_threads_init();
  tor_compress_init();
  init_logging(0);
  monotime_init();
+2 −0
Original line number Diff line number Diff line
@@ -10,6 +10,7 @@

#include "lib/err/torerr_sys.h"
#include "lib/process/winprocess_sys.h"
#include "lib/thread/thread_sys.h"

#include <stddef.h>

@@ -19,6 +20,7 @@
const subsys_fns_t *tor_subsystems[] = {
  &sys_winprocess,
  &sys_torerr,
  &sys_threads,
};

const unsigned n_tor_subsystems = ARRAY_LENGTH(tor_subsystems);
+1 −0
Original line number Diff line number Diff line
@@ -2,5 +2,6 @@ orconfig.h
lib/cc/*.h
lib/lock/*.h
lib/log/*.h
lib/subsys/*.h
lib/testsupport/*.h
lib/thread/*.h
+16 −0
Original line number Diff line number Diff line
@@ -14,9 +14,11 @@
#include "orconfig.h"
#include <stdlib.h>
#include "lib/thread/threads.h"
#include "lib/thread/thread_sys.h"

#include "lib/log/log.h"
#include "lib/log/util_bug.h"
#include "lib/subsys/subsys.h"

#include <string.h>

@@ -109,3 +111,17 @@ atomic_counter_exchange(atomic_counter_t *counter, size_t newval)
  return oldval;
}
#endif /* !defined(HAVE_WORKING_STDATOMIC) */

static int
sys_threads_initialize(void)
{
  tor_threads_init();
  return 0;
}

const subsys_fns_t sys_threads = {
  .name = "threads",
  .supported = true,
  .level = -95,
  .initialize = sys_threads_initialize,
};
+3 −2
Original line number Diff line number Diff line
@@ -23,5 +23,6 @@ src_lib_libtor_thread_testing_a_CPPFLAGS = $(AM_CPPFLAGS) $(TEST_CPPFLAGS)
src_lib_libtor_thread_testing_a_CFLAGS = $(AM_CFLAGS) $(TEST_CFLAGS)

noinst_HEADERS +=					\
	src/lib/thread/threads.h			\
	src/lib/thread/numcpus.h
	src/lib/thread/numcpus.h			\
	src/lib/thread/thread_sys.h			\
	src/lib/thread/threads.h
Loading