[tor-bugs] #7912 [Tor]: Cells that don't get inserted into cell queues can clog connection flushing

Tor Bug Tracker & Wiki blackhole at torproject.org
Fri Mar 22 17:26:33 UTC 2013


#7912: Cells that don't get inserted into cell queues can clog connection flushing
------------------------------------+---------------------------------------
 Reporter:  asn                     |          Owner:                    
     Type:  defect                  |         Status:  needs_revision    
 Priority:  major                   |      Milestone:  Tor: 0.2.4.x-final
Component:  Tor                     |        Version:                    
 Keywords:  tor-relay 023-backport  |         Parent:                    
   Points:                          |   Actualpoints:                    
------------------------------------+---------------------------------------

Comment(by andrea):

 I think the best solution to this is to treat DESTROY and any other
 similar entities we want to schedule distinctly from any particular
 circuit as a special virtual circuit for scheduling purposes, but this
 will be somewhat tricky to do because right now the code in circuitmux.c
 uses circuit_t * in a lot of places: keeping a linked list of active
 circuits, passing a circuit_t * into function pointers, and so on.  In the
 function pointer case, it seems acceptable to modify it to pass NULL to
 mean 'no particular circuit' along with a separate circuitmux-wide
 instance of circuitmux_policy_circ_data_t, but the usage internal to the
 circuitmux_t will be trickier.

 Probably, we should switch to some other data structure that wraps a
 circuit_t * *or* has a flag to say 'this is the magic control circuit',
 but that's an extensive enough code modification that I think it's
 definitely an 0.2.5 feature.  The suggestion of special-casing the destroy
 queue to be high-priority without starvation seems like a good right-now
 option.

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


More information about the tor-bugs mailing list