[tor-bugs] #23710 [Core Tor/Tor]: sched: channel_more_to_flush() is probably looking at the wrong queue

Tor Bug Tracker & Wiki blackhole at torproject.org
Fri Sep 29 16:04:42 UTC 2017


#23710: sched: channel_more_to_flush() is probably looking at the wrong queue
------------------------------+--------------------------------
     Reporter:  dgoulet       |      Owner:  (none)
         Type:  defect        |     Status:  new
     Priority:  High          |  Milestone:  Tor: 0.3.3.x-final
    Component:  Core Tor/Tor  |    Version:
     Severity:  Normal        |   Keywords:  tor-sched
Actual Points:                |  Parent ID:
       Points:                |   Reviewer:
      Sponsor:                |
------------------------------+--------------------------------
 In the scheduler (both vanilla and kist), we do flush cells from the
 `outgoing_queue` to the outbuf using `channel_flush_some_cells()`.

 However, once we are done and to know what state the channel should be in,
 we use `channel_more_to_flush()` that looks at two things, the
 `incoming_queue` and the number of cells in the `cmux`.

 It seems from my investigation that tor doesn't have this concept of
 "flushing cells from the incoming queue" so it doesn't make sense to look
 at it when we are trying to flush cells from the `outgoing_queue` to the
 outbuf so we can actually send() them.

 Thus, this function should look at the `outgoing_queue` in my opinion
 although if I'm right in #23709, all this could change.

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


More information about the tor-bugs mailing list