[tor-bugs] #19969 [Core Tor/Tor]: tor client does not immediately open new circuits after standby

Tor Bug Tracker & Wiki blackhole at torproject.org
Mon Oct 31 03:44:13 UTC 2016


#19969: tor client does not immediately open new circuits after standby
-------------------------------------------------+-------------------------
 Reporter:  weasel                               |          Owner:
     Type:  defect                               |         Status:
                                                 |  needs_review
 Priority:  High                                 |      Milestone:  Tor:
                                                 |  0.3.0.x-final
Component:  Core Tor/Tor                         |        Version:  Tor:
                                                 |  0.2.8.6
 Severity:  Normal                               |     Resolution:
 Keywords:  regression 029-backport              |  Actual Points:
  028-backport                                   |
Parent ID:                                       |         Points:  2
 Reviewer:                                       |        Sponsor:
-------------------------------------------------+-------------------------

Comment (by arma):

 Replying to [comment:18 arma]:
 > 1)
 > {{{
 >   /* All active linked conns should get their read events activated,
 >    * so that libevent knows to run their callbacks. */
 >   SMARTLIST_FOREACH(active_linked_connection_lst, connection_t *, conn,
 >                     event_active(conn->read_event, EV_READ, 1));
 >   called_loop_once = smartlist_len(active_linked_connection_lst) ? 1 :
 0;
 > }}}
 >
 > Does this one matter? It might. But maybe because it's only about linked
 conns, they will probably only happen when there's other activity too?
 Worth thinking more about before we brush it off.

 Ah ha -- I think we're ok here, since active_linked_connection_lst only
 gets added to during connection_start_reading_from_linked_conn(), and that
 function has an explicit call to tor_event_base_loopexit() to bust us out
 of the loop.

 That actually gives a suggestion for a third avenue for a fix -- in
 connection_ap_mark_as_pending_circuit_(), we add one of those calls to
 tor_event_base_loopexit(). Would that be simpler or am I mistaken?

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/19969#comment:19>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list