[tor-bugs] #6468 [Tor Relay]: OR connection early-flush code in connection_handle_write_impl is needless

Tor Bug Tracker & Wiki torproject-admin at torproject.org
Wed Jul 25 22:30:12 UTC 2012


#6468: OR connection early-flush code in connection_handle_write_impl is needless
-----------------------+----------------------------------------------------
 Reporter:  nickm      |          Owner:                    
     Type:  defect     |         Status:  new               
 Priority:  normal     |      Milestone:  Tor: 0.2.4.x-final
Component:  Tor Relay  |        Version:                    
 Keywords:             |         Parent:                    
   Points:             |   Actualpoints:                    
-----------------------+----------------------------------------------------
 Long ago, before we had cell queues, it was necessary to maybe call
 connection_handle_write() from connectino_write_to_buf_impl() on OR
 connections, so that we wouldn't get into a loop of reading infinite
 amounts of data and queueing it all on an outbuf before bothering to write
 any data.

 If that doesn't sounds like what our code does now, you're right: right
 now, we won't stick more than OR_CONN_HIGHWATER bytes of cells on an
 outbuf, and we won't suck more than CELL_QUEUE_HIGHWATER_SIZE cells off
 any edge connection.  So, there's no more call for that code.

 Removing this code will simplify our code flow, and that should be
 something we can all get behind.

 Discovered by a user on IRC.  Marking this for 0.2.4, though we can
 backport to 0.2.3 if it turns out to be safe.  If we're not 100% sure
 here, we could simulate before merging.

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


More information about the tor-bugs mailing list