tor

The Tor anonymity network
git clone https://git.dasho.dev/tor.git
Log | Files | Refs | README | LICENSE

commit b9de73e46ea86de1ca1e4810cd14ea21c81acfc8
parent 8713d9762a79c46829891cafbcf1a972f0946065
Author: David Goulet <dgoulet@torproject.org>
Date:   Wed, 23 Nov 2022 13:40:47 -0500

cpu: Set number of threads to number of cores

Cap this to 2 threads always because we need a low and high priority
thread even with a single core.

Fixes #40713

Signed-off-by: David Goulet <dgoulet@torproject.org>

Diffstat:
Achanges/ticket40713 | 4++++
Msrc/core/mainloop/cpuworker.c | 2+-
2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/changes/ticket40713 b/changes/ticket40713 @@ -0,0 +1,4 @@ + o Minor feature (cpuworker): + - Always use the number of threads for our CPU worker pool to the number of + core available but cap it to a minimum of 2 in case of a single core. + Fixes bug 40713; bugfix on 0.3.5.1-alpha. diff --git a/src/core/mainloop/cpuworker.c b/src/core/mainloop/cpuworker.c @@ -129,7 +129,7 @@ cpu_init(void) always make sure we have at least two threads, so that there will be at least one thread of each kind. */ - const int n_threads = get_num_cpus(get_options()) + 1; + const int n_threads = MAX(get_num_cpus(get_options()), 2); threadpool = threadpool_new(n_threads, replyqueue, worker_state_new,