[tor-bugs] #7087 [Tor]: memory leaks in new channel code

Tor Bug Tracker & Wiki torproject-admin at torproject.org
Mon Oct 15 13:18:51 UTC 2012


#7087: memory leaks in new channel code
-----------------------+----------------------------------------------------
 Reporter:  arma       |          Owner:                    
     Type:  defect     |         Status:  new               
 Priority:  normal     |      Milestone:  Tor: 0.2.4.x-final
Component:  Tor        |        Version:                    
 Keywords:  tor-relay  |         Parent:                    
   Points:             |   Actualpoints:                    
-----------------------+----------------------------------------------------

Comment(by andrea):

 As can be seen from the attached debug log, channel_free_all() tries to
 free the following 13 channels remaining active at shutdown time:

 Oct 15 05:35:42.000 [debug] channel_free_list(): Cleaning up channel
 0x9353e20 (global ID 705) in state open (2)
 Oct 15 05:35:42.000 [debug] channel_free_list(): Cleaning up channel
 0xa59c4d0 (global ID 763) in state open (2)
 Oct 15 05:35:42.000 [debug] channel_free_list(): Cleaning up channel
 0xa627d10 (global ID 753) in state open (2)
 Oct 15 05:35:42.000 [debug] channel_free_list(): Cleaning up channel
 0x75f1120 (global ID 752) in state open (2)
 Oct 15 05:35:42.000 [debug] channel_free_list(): Cleaning up channel
 0x9db3980 (global ID 575) in state open (2)
 Oct 15 05:35:42.000 [debug] channel_free_list(): Cleaning up channel
 0xa229910 (global ID 704) in state open (2)
 Oct 15 05:35:42.000 [debug] channel_free_list(): Cleaning up channel
 0x8c59b70 (global ID 574) in state open (2)
 Oct 15 05:35:42.000 [debug] channel_free_list(): Cleaning up channel
 0x9c351c0 (global ID 790) in state open (2)
 Oct 15 05:35:42.000 [debug] channel_free_list(): Cleaning up channel
 0x8b76e90 (global ID 789) in state open (2)
 Oct 15 05:35:42.000 [debug] channel_free_list(): Cleaning up channel
 0xa67e2a0 (global ID 771) in state open (2)
 Oct 15 05:35:42.000 [debug] channel_free_list(): Cleaning up channel
 0xa344a40 (global ID 764) in state open (2)
 Oct 15 05:35:42.000 [debug] channel_free_list(): Cleaning up channel
 0x9a87c30 (global ID 746) in state open (2)
 Oct 15 05:35:42.000 [debug] channel_free_list(): Cleaning up channel
 0x9df56c0 (global ID 788) in state open (2)

 I doubt the number 13 here is a coincidence; the leaked channels (and the
 listener, which was changed to state closed earlier in the debug log) were
 left over at shutdown time, and a bug must exist in channel_free_all().
 The good news here, though, is that all the leaks occur at shutdown time
 and scale with the number of channels active at that moment rather than a
 progressive leak accumulating over the lifetime of the Tor process.

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


More information about the tor-bugs mailing list