tor

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

commit c32108ee0fea851ced14f71d842390992f762393
parent ae4e5b98245169dc02c12138d4acc69ce7da0261
Author: Nick Mathewson <nickm@torproject.org>
Date:   Tue, 17 Apr 2018 09:14:44 -0400

Merge remote-tracking branch 'public/bug24688'

Diffstat:
Achanges/bug24688 | 3+++
Msrc/common/timers.c | 5+++++
2 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/changes/bug24688 b/changes/bug24688 @@ -0,0 +1,3 @@ + o Minor features (performance, 32-bit): + - Make our timing-wheel code run a tiny bit faster on 32-bit platforms, + by preferring 32-bit math to 64-bit. Closes ticket 24688. diff --git a/src/common/timers.c b/src/common/timers.c @@ -64,6 +64,11 @@ struct timeout_cb { * above TIMEOUT_MAX can also be super-inefficient. Choosing 5 here sets * timeout_max to 2^30 ticks, or 29 hours with our value for USEC_PER_TICK */ #define WHEEL_NUM 5 +#if SIZEOF_VOID_P == 4 +/* On 32-bit platforms, we want to override wheel_bit, so that timeout.c will + * use 32-bit math. */ +#define WHEEL_BIT 5 +#endif #include "src/ext/timeouts/timeout.c" static struct timeouts *global_timeouts = NULL;