Commit Graph

38340 Commits

Author SHA1 Message Date
David Goulet 9a06fee5a1 Merge branch 'maint-0.4.7' 2022-12-05 13:23:34 -05:00
Mike Perry a51cd9a569 Ticket 40724: Add metrics for CC circuit counts 2022-12-02 21:50:59 +00:00
Mike Perry 4c419183cc Ticket 40724: Changes file 2022-12-01 22:22:45 +00:00
Mike Perry 07b521560f Ticket 40724: Additional congestion control metrics 2022-12-01 22:19:08 +00:00
David Goulet 85ca92951a changes: Fix file without ticket number
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-28 10:28:30 -05:00
David Goulet bf8f829314 Merge branch 'maint-0.4.7' 2022-11-28 10:27:18 -05:00
David Goulet a91bcb5516 Merge branch 'maint-0.4.5' into maint-0.4.7 2022-11-28 10:27:13 -05:00
David Goulet efeef819f5 changes: Add file for ticket 40674
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-28 10:25:48 -05:00
Rasmus Dahlberg 15efc25fb5 dns: Make TTLs fuzzy at exit relays
This change mitigates DNS-based website oracles by making the time that
a domain name is cached uncertain (+- 4 minutes of what's measurable).

Resolves TROVE-2021-009.

Fixes #40674
2022-11-28 10:25:06 -05:00
Rasmus Dahlberg be7afe658e Clip DNS TTL values once in event callback
This change ensures that other parts of the code base always operate on
the same clipped TTL values, notably without being aware of clipping.
2022-11-28 10:25:04 -05:00
David Goulet 21121eb231 Merge branch 'tor-gitlab/mr/652' 2022-11-28 09:37:12 -05:00
David Goulet c408d0a7f9 Merge branch 'tor-gitlab/mr/657' 2022-11-28 09:35:53 -05:00
David Goulet 3ac08ac200 Merge branch 'tor-gitlab/mr/658' 2022-11-28 09:33:32 -05:00
Vinícius Zavam 642e56bdb6 perform proper 'OR' while checking defined vars
* the || is not possible with #ifdef statement;
  * here the #ifdef turns into '#if defined()'.
2022-11-27 18:41:09 +00:00
David Goulet 04d8753676 Merge branch 'maint-0.4.7' 2022-11-23 14:54:43 -05:00
David Goulet fbc9e92fdb relay: Use the configured number of threads for worker work calculation
We cap our number of CPU worker threads to at least 2 even if we have a
single core. But also, before we used to always add one extra thread
regardless of the number of core.

This meant that we were off when re-using the get_num_cpus() function
when calculating our onionskin work overhead because we were always off
by one.

This commit makes it that we always use the number of thread our actual
thread pool was configured with.

Fixes #40719

Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-23 14:05:10 -05:00
David Goulet b9de73e46e 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>
2022-11-23 13:52:36 -05:00
David Goulet 8713d9762a log: Remove extra newline in a log statement
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-23 13:28:22 -05:00
Vinícius Zavam 4b23bd8c9c add chagelog file related to MR!652 2022-11-19 08:02:46 +00:00
David Goulet a7a90a3f11 changelog: Add 0.4.7.11 stable
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-10 10:29:02 -05:00
David Goulet 30e41ce9ad Merge branch 'maint-0.4.7' 2022-11-10 10:21:13 -05:00
Tor CI Release cca19a4099 version: Bump version to 0.4.7.11-dev 2022-11-10 10:21:05 -05:00
David Goulet a2a5b51f2b Merge branch 'maint-0.4.7' 2022-11-10 09:52:51 -05:00
Tor CI Release ffcb8a76af version: Bump version to 0.4.7.11 2022-11-10 09:51:29 -05:00
David Goulet e14c4fe771 Merge branch 'maint-0.4.7' 2022-11-10 09:44:52 -05:00
Tor CI Release 58bd4e0899 fallbackdir: Update list generated on November 10, 2022 2022-11-10 09:43:55 -05:00
Tor CI Release e39be4a14f Update geoip files to match ipfire location db, 2022/11/10. 2022-11-10 09:43:47 -05:00
David Goulet b5afc7d62a Merge branch 'maint-0.4.7' 2022-11-10 09:30:42 -05:00
David Goulet e94c27c0ab metrics: Split cc with counters and gauges
Part of #40712

Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-10 08:57:39 -05:00
David Goulet 2737037ccd metrics: Split connections with a counter and gauge
Created and Rejected connections are ever going up counters. While
Opened connections are gauges going up and down.

Fixes #40712

Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-10 07:29:18 -05:00
David Goulet f39f8b30f4 Merge branch 'maint-0.4.7' 2022-11-09 15:35:58 -05:00
David Goulet e2a94e050d changes: Add file for ticket 40674
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-09 15:35:51 -05:00
David Goulet c13dc8b08a Merge branch 'ticket40674_047_01' into maint-0.4.7 2022-11-09 15:32:18 -05:00
Rasmus Dahlberg 21eac1e8d8 dns: Make TTLs fuzzy at exit relays
This change mitigates DNS-based website oracles by making the time that
a domain name is cached uncertain (+- 4 minutes of what's measurable).

Resolves TROVE-2021-009.

Fixes #40674
2022-11-09 15:30:43 -05:00
David Goulet 560d44b08b Merge branch 'maint-0.4.7' 2022-11-09 15:29:04 -05:00
David Goulet 780ca741f3 relay: Cache onion queue parameters on consensus change
This is part of the fast path so we need to cache consensus parameters
instead of querying it everytime we need to learn a value.

Part of #40704

Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-09 15:12:51 -05:00
David Goulet e3f6908984 relay: Make the max pending tasks per CPU a consensus parameter
Until now, there was this magic number (64) used as the maximum number
of tasks a CPU worker can take at once.

This commit makes it a consensus parameter so our future selves can
think of a better value depending on network conditions.

Part of #40704

Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-09 13:13:21 -05:00
David Goulet 9c8c7804d5 relay: Add the onion_queue_wait_cutoff consensus param
Transform the hardcoded value ONIONQUEUE_WAIT_CUTOFF into a consensus
parameter so we can control it network wide.

Closes #40704

Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-09 11:57:32 -05:00
David Goulet 93523ed0d6 relay: Make MaxOnionQueueDelay into a consensus param
Part of #40704

Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-09 11:57:32 -05:00
David Goulet bd055a258a Merge branch 'maint-0.4.7' 2022-11-09 11:51:52 -05:00
David Goulet 4db03ac360 Merge branch 'tor-gitlab/mr/654' into maint-0.4.7 2022-11-09 11:51:46 -05:00
Mike Perry 04fafeb2dd metrics: Reorganize state labels so rate() can be applied
Part of #40708.
2022-11-09 11:48:42 -05:00
Mike Perry 09d32ac667 metrics: Use N_EWMA for moving avg, with N=100.
Part of #40708.
2022-11-09 11:48:42 -05:00
David Goulet 1ff78f3751 Merge branch 'maint-0.4.7' 2022-11-09 11:47:06 -05:00
David Goulet fe045f02d0 Merge branch 'maint-0.4.5' into maint-0.4.7 2022-11-09 11:47:06 -05:00
Sam James ee38514cc4 build: fix -Wstrict-prototypes (Clang 16)
Clang 16 warns on -Wstrict-prototypes in preparation for C23 which can
among other things, lead to some configure tests silently failing/returning the wrong result.

Fixes this error:
```
-ignoreme: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
+ignoreme: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
 main ()
```

For more information, see LWN.net [0] or LLVM's Discourse [1], gentoo-dev@ [2],
or the (new) c-std-porting mailing list [3].

[0] https://lwn.net/Articles/913505/
[1] https://discourse.llvm.org/t/configure-script-breakage-with-the-new-werror-implicit-function-declaration/65213
[2] https://archives.gentoo.org/gentoo-dev/message/dd9f2d3082b8b6f8dfbccb0639e6e240
[3] hosted at lists.linux.dev.

Bug: https://bugs.gentoo.org/879747
Signed-off-by: Sam James <sam@gentoo.org>
---
2022-11-09 11:46:55 -05:00
David Goulet 97512f3f7b changelog: Add the missing latest stables
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-09 08:44:43 -05:00
David Goulet 8b8873b759 Merge branch 'maint-0.4.7' 2022-11-08 15:26:44 -05:00
David Goulet 5b0103cfb4 Merge branch 'tor-gitlab/mr/651' into maint-0.4.7 2022-11-08 15:25:08 -05:00
Mike Perry 59bef48490 metrics: Record percentage of blocked channels
Part of #40708.
2022-11-08 18:25:07 +00:00