summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorwillchan@chromium.org <willchan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-24 18:50:15 +0000
committerwillchan@chromium.org <willchan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-24 18:50:15 +0000
commit9f7c4fdc2d5fab8cca68ddb50217db9b62b525e3 (patch)
tree2379f9b7fa6cd9ffff3a86039f55b5ddb66d247e /tools
parent562d8c4bc0559df9e3265430f8903ee5bcccdbe2 (diff)
downloadchromium_src-9f7c4fdc2d5fab8cca68ddb50217db9b62b525e3.zip
chromium_src-9f7c4fdc2d5fab8cca68ddb50217db9b62b525e3.tar.gz
chromium_src-9f7c4fdc2d5fab8cca68ddb50217db9b62b525e3.tar.bz2
Flip: Fix a bunch of leaks.
FlipIOBuffer::release() was broken. It called release() on scoped_refptrs which does not decrease refcount, hence it leaked IOBuffers and FlipStreams. Redo the memory management for FlipSession. Stop using raw pointers in FlipSessionPool to hold onto FlipSession. FlipSessionPool uses scoped_refptr now to track Fli pSessions. Instead of having FlipSession call Release() on itself, it now calls FlipSessionPool to remove itself from the pool when the tcp connection is closed. In FlipStreamTest, manually call FlipSessionPool::Remove() since there is no tcp connection event to trigger FlipSession to remove itself. BUG=http://crbug.com/28493 Review URL: http://codereview.chromium.org/438014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32945 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'tools')
-rw-r--r--tools/valgrind/memcheck/suppressions.txt54
-rw-r--r--tools/valgrind/memcheck/suppressions_mac.txt94
2 files changed, 0 insertions, 148 deletions
diff --git a/tools/valgrind/memcheck/suppressions.txt b/tools/valgrind/memcheck/suppressions.txt
index 6325f76..9270036 100644
--- a/tools/valgrind/memcheck/suppressions.txt
+++ b/tools/valgrind/memcheck/suppressions.txt
@@ -1728,60 +1728,6 @@
fun:_ZN11MessageLoop11RunInternalEv
fun:_ZN11MessageLoop10RunHandlerEv
}
-# new flip leaks TODO(willchan): fix these
-{
- bug_28493a
- Memcheck:Leak
- fun:_Znw*
- fun:_ZN3net11FlipSession17GetOrCreateStreamERKNS_15HttpRequestInfoEPKNS_16UploadDataStreamE
- ...
-}
-{
- bug_28493b
- Memcheck:Leak
- fun:_Znw*
- ...
- fun:_ZN3net26FlipNetworkTransactionTest17TransactionHelperERKNS_15HttpRequestInfoEPNS_8MockReadES5_
- ...
-}
-{
- bug_28493c
- Memcheck:Leak
- fun:_Znw*
- fun:_ZN3net116_GLOBAL__N__b_slave_chromium_rel_linux_valgrind_builder_build_src_net_flip_flip_stream_unittest.cc_00000000_46E4189919SessionDependenciesC1Ev
- fun:_ZN3net116_GLOBAL__N__b_slave_chromium_rel_linux_valgrind_builder_build_src_net_flip_flip_stream_unittest.cc_00000000_46E4189914FlipStreamTestC2Ev
- fun:_ZN3net116_GLOBAL__N__b_slave_chromium_rel_linux_valgrind_builder_build_src_net_flip_flip_stream_unittest.cc_00000000_46E4189931FlipStreamTest_SendRequest_TestC1Ev
- fun:_ZN7testing8internal15TestFactoryImplIN3net116_GLOBAL__N__b_slave_chromium_rel_linux_valgrind_builder_build_src_net_flip_flip_stream_unittest.cc_00000000_46E4189931FlipStreamTest_SendRequest_TestEE10CreateTestEv
- fun:_ZN7testing8internal12TestInfoImpl3RunEv
- fun:_ZN7testing8TestCase3RunEv
- fun:_ZN7testing8internal12UnitTestImpl11RunAllTestsEv
- fun:_ZN7testing8UnitTest3RunEv
- fun:_ZN9TestSuite3RunEv
- fun:main
-}
-{
- bug_28493d
- Memcheck:Leak
- fun:_Znw*
- fun:_ZN3net11FlipSession11WriteSocketEv
- ...
-}
-{
- bug_28493
- Memcheck:Leak
- fun:_Znw*
- fun:_ZN3net129_GLOBAL__N__b_slave_chromium_rel_linux_valgrind_builder_build_src_net_flip_flip_network_transaction_unittest.cc_00000000_9BF5CC6519SessionDependenciesC1Ev
- fun:_ZN3net26FlipNetworkTransactionTest17TransactionHelperERKNS_15HttpRequestInfoEPNS_8MockReadES5_
- fun:_ZN3net47FlipNetworkTransactionTest_SynReplyHeaders_Test8TestBodyEv
- fun:_ZN7testing4Test3RunEv
- fun:_ZN7testing8internal12TestInfoImpl3RunEv
- fun:_ZN7testing8TestCase3RunEv
- fun:_ZN7testing8internal12UnitTestImpl11RunAllTestsEv
- fun:_ZN7testing8UnitTest3RunEv
- fun:_ZN9TestSuite3RunEv
- fun:main
-}
-
{
bug_28633
Memcheck:Leak
diff --git a/tools/valgrind/memcheck/suppressions_mac.txt b/tools/valgrind/memcheck/suppressions_mac.txt
index d6e005a..792559b 100644
--- a/tools/valgrind/memcheck/suppressions_mac.txt
+++ b/tools/valgrind/memcheck/suppressions_mac.txt
@@ -423,97 +423,3 @@
fun:_ZN21ResourceMessageFilter10OnDestructEv
fun:_ZN3IPC12ChannelProxy19MessageFilterTraits8DestructEPNS0_13MessageFilterE
}
-# new flip leaks TODO(willchan): fix these
-{
- bug_28493a
- Memcheck:Leak
- fun:_Znw*
- fun:_ZN3net11FlipSession17GetOrCreateStreamERKNS_15HttpRequestInfoEPKNS_16UploadDataStreamE
- ...
-}
-{
- bug_28493b
- Memcheck:Leak
- fun:_Znw*
- ...
- fun:_ZN3net26FlipNetworkTransactionTest17TransactionHelperERKNS_15HttpRequestInfoEPNS_8MockReadES5_
- ...
-}
-{
- bug_28493c
- Memcheck:Leak
- fun:_Znw*
- fun:_ZN3net116_GLOBAL__N__b_slave_chromium_rel_linux_valgrind_builder_build_src_net_flip_flip_stream_unittest.cc_00000000_46E4189919SessionDependenciesC1Ev
- fun:_ZN3net116_GLOBAL__N__b_slave_chromium_rel_linux_valgrind_builder_build_src_net_flip_flip_stream_unittest.cc_00000000_46E4189914FlipStreamTestC2Ev
- fun:_ZN3net116_GLOBAL__N__b_slave_chromium_rel_linux_valgrind_builder_build_src_net_flip_flip_stream_unittest.cc_00000000_46E4189931FlipStreamTest_SendRequest_TestC1Ev
- fun:_ZN7testing8internal15TestFactoryImplIN3net116_GLOBAL__N__b_slave_chromium_rel_linux_valgrind_builder_build_src_net_flip_flip_stream_unittest.cc_00000000_46E4189931FlipStreamTest_SendRequest_TestEE10CreateTestEv
- fun:_ZN7testing8internal12TestInfoImpl3RunEv
- fun:_ZN7testing8TestCase3RunEv
- fun:_ZN7testing8internal12UnitTestImpl11RunAllTestsEv
- fun:_ZN7testing8UnitTest3RunEv
- fun:_ZN9TestSuite3RunEv
- fun:main
-}
-{
- bug_28493d
- Memcheck:Leak
- fun:_Znw*
- fun:_ZN3net11FlipSession11WriteSocketEv
- ...
-}
-{
- bug_28493
- Memcheck:Leak
- fun:_Znw*
- fun:_ZN3net129_GLOBAL__N__b_slave_chromium_rel_linux_valgrind_builder_build_src_net_flip_flip_network_transaction_unittest.cc_00000000_9BF5CC6519SessionDependenciesC1Ev
- fun:_ZN3net26FlipNetworkTransactionTest17TransactionHelperERKNS_15HttpRequestInfoEPNS_8MockReadES5_
- fun:_ZN3net47FlipNetworkTransactionTest_SynReplyHeaders_Test8TestBodyEv
- fun:_ZN7testing4Test3RunEv
- fun:_ZN7testing8internal12TestInfoImpl3RunEv
- fun:_ZN7testing8TestCase3RunEv
- fun:_ZN7testing8internal12UnitTestImpl11RunAllTestsEv
- fun:_ZN7testing8UnitTest3RunEv
- fun:_ZN9TestSuite3RunEv
- fun:main
-}
-{
- bug_28493
- Memcheck:Leak
- fun:_Znw*
- fun:_ZN3net12_GLOBAL__N_119SessionDependenciesC2Ev
- fun:_ZN3net12_GLOBAL__N_119SessionDependenciesC1Ev
- fun:_ZN3net12_GLOBAL__N_114FlipStreamTestC2Ev
- fun:_ZN3net12_GLOBAL__N_131FlipStreamTest_SendRequest_TestC2Ev
- fun:_ZN3net12_GLOBAL__N_131FlipStreamTest_SendRequest_TestC1Ev
- fun:_ZN7testing8internal15TestFactoryImplIN3net12_GLOBAL__N_131FlipStreamTest_SendRequest_TestEE10CreateTestEv
- fun:_ZN7testing8internal12TestInfoImpl3RunEv
- fun:_ZN7testing8TestCase3RunEv
- fun:_ZN7testing8internal12UnitTestImpl11RunAllTestsEv
- fun:_ZN7testing8UnitTest3RunEv
- fun:_ZN9TestSuite3RunEv
- fun:main
-}
-{
- bug_28493
- Memcheck:Leak
- fun:_Znw*
- fun:_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsPSt4listIPN3net11FlipSessionESaIS7_EEEEE8allocateEmPKv
- fun:_ZNSt8_Rb_treeISsSt4pairIKSsPSt4listIPN3net11FlipSessionESaIS5_EEESt10_Select1stIS9_ESt4lessISsESaIS9_EE11_M_get_nodeEv
- fun:_ZNSt8_Rb_treeISsSt4pairIKSsPSt4listIPN3net11FlipSessionESaIS5_EEESt10_Select1stIS9_ESt4lessISsESaIS9_EE14_M_create_nodeERKS9_
- fun:_ZNSt8_Rb_treeISsSt4pairIKSsPSt4listIPN3net11FlipSessionESaIS5_EEESt10_Select1stIS9_ESt4lessISsESaIS9_EE9_M_insertEPSt18_Rb_tree_node_baseSH_RKS9_
- fun:_ZNSt8_Rb_treeISsSt4pairIKSsPSt4listIPN3net11FlipSessionESaIS5_EEESt10_Select1stIS9_ESt4lessISsESaIS9_EE13insert_uniqueERKS9_
- fun:_ZNSt8_Rb_treeISsSt4pairIKSsPSt4listIPN3net11FlipSessionESaIS5_EEESt10_Select1stIS9_ESt4lessISsESaIS9_EE13insert_uniqueESt17_Rb_tree_iteratorIS9_ERKS9_
- fun:_ZNSt3mapISsPSt4listIPN3net11FlipSessionESaIS3_EESt4lessISsESaISt4pairIKSsS6_EEE6insertESt17_Rb_tree_iteratorISB_ERKSB_
- fun:_ZNSt3mapISsPSt4listIPN3net11FlipSessionESaIS3_EESt4lessISsESaISt4pairIKSsS6_EEEixERSA_
- fun:_ZN3net15FlipSessionPool14AddSessionListERKSs
- fun:_ZN3net15FlipSessionPool3GetERKNS_12HostResolver11RequestInfoEPNS_18HttpNetworkSessionE
- fun:_ZN3net12_GLOBAL__N_114FlipStreamTest17CreateFlipSessionEv
- fun:_ZN3net12_GLOBAL__N_131FlipStreamTest_SendRequest_Test8TestBodyEv
- fun:_ZN7testing4Test3RunEv
- fun:_ZN7testing8internal12TestInfoImpl3RunEv
- fun:_ZN7testing8TestCase3RunEv
- fun:_ZN7testing8internal12UnitTestImpl11RunAllTestsEv
- fun:_ZN7testing8UnitTest3RunEv
- fun:_ZN9TestSuite3RunEv
- fun:main
-}