tor/src
Micah Elizabeth Scott a13d7bd5e9 hs_pow: always give other events a chance to run between rend requests
This dequeue path has been through a few revisions by now, first
limiting us to a fixed number per event loop callback, then an
additional limit based on a token bucket, then the current version
which has only the token bucket.

The thinking behing processing multiple requests per callback was to
optimize our usage of libevent, but in effect this creates a
prioritization problem. I think even a small fixed limit would be less
reliable than just backing out this optimization and always allowing
other callbacks to interrupt us in-between dequeues.

With this patch I'm seeing much smoother queueing behavior when I add
artificial delays to the main thread in testing.

Signed-off-by: Micah Elizabeth Scott <beth@torproject.org>
2023-05-10 07:41:37 -07:00
..
app hs_pow: Replace libb2 dependency with hashx's internal blake2 2023-05-10 07:38:28 -07:00
config Merge branch 'maint-0.4.7' 2023-01-12 11:07:40 -05:00
core hs_pow: client side effort adjustment 2023-05-10 07:40:46 -07:00
ext hashx: trim trailing whitespace 2023-05-10 07:38:28 -07:00
feature hs_pow: always give other events a chance to run between rend requests 2023-05-10 07:41:37 -07:00
lib sandbox: allow stack mmap with prot_none 2023-05-10 07:38:28 -07:00
test hs_pow: client side effort adjustment 2023-05-10 07:40:46 -07:00
tools Remove broken MSVC support 2022-04-27 23:09:44 -04:00
trunnel hs_pow: Define seed_head as uint8_t[4] instead of uint32_t 2023-05-10 07:38:28 -07:00
arch_goals.md Document high-level architecture goals 2019-12-10 16:47:38 -06:00
include.am Remove broken MSVC support 2022-04-27 23:09:44 -04:00
mainpage.md Move description of ext contents into an md file. 2020-07-02 13:46:25 -04:00