[tor-bugs] #24975 [Core Tor/Tor]: sched: scheduler_notify_networkstatus_changed() calls select_scheduler() without the new consensus
Tor Bug Tracker & Wiki
blackhole at torproject.org
Tue Jan 23 21:05:06 UTC 2018
#24975: sched: scheduler_notify_networkstatus_changed() calls select_scheduler()
without the new consensus
-------------------------------------+------------------------------------
Reporter: dgoulet | Owner: dgoulet
Type: defect | Status: assigned
Priority: High | Milestone: Tor: 0.3.3.x-final
Component: Core Tor/Tor | Version:
Severity: Normal | Resolution:
Keywords: 032-backport, tor-sched | Actual Points:
Parent ID: | Points:
Reviewer: | Sponsor:
-------------------------------------+------------------------------------
Comment (by arma):
Quoting the oniongit comment here for ease of history:
"""
When this function is called, the consensus ***has not yet changed***. It
is still old_c. It will be new_c soon. This is your chance to take new
actions.
So if you ignore new_c and just call stuff that looks at "the consensus",
you're going to be looking at the current consensus, i.e. old_c.
I think this is a bug in 0.3.2 with
scheduler_notify_networkstatus_changed() too, in that set_scheduler() can
call select_scheduler() which calls scheduler_can_use_kist() which calls
kist_scheduler_run_interval(NULL) -- so even though
kist_scheduler_run_interval knows how to receive an ns as an argument, it
doesn't get new_c here.
"""
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/24975#comment:2>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list