tor

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

commit c7af923567bca5b0a6e9dcd5ceda4b01be09f9a1
parent 77cc97cf0a20ed0a062a1cb87bef6c40941e4cff
Author: David Goulet <dgoulet@torproject.org>
Date:   Mon, 18 Sep 2017 10:58:38 -0400

sched: BUG() on event_add() and log_warn next_run

It is highly unlikely to happen but if so, we need to know and why. The
warning with the next_run values could help.

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

Diffstat:
Msrc/or/scheduler.c | 6+++++-
1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/or/scheduler.c b/src/or/scheduler.c @@ -506,7 +506,11 @@ scheduler_ev_add(const struct timeval *next_run) { tor_assert(run_sched_ev); tor_assert(next_run); - event_add(run_sched_ev, next_run); + if (BUG(event_add(run_sched_ev, next_run) < 0)) { + log_warn(LD_SCHED, "Adding to libevent failed. Next run time was set to: " + "%ld.%06ld", next_run->tv_sec, next_run->tv_usec); + return; + } } /* Make the scheduler event active with the given flags. */