summaryrefslogtreecommitdiffstats
path: root/tools/valgrind
diff options
context:
space:
mode:
authorxhwang <xhwang@chromium.org>2014-08-27 22:49:17 -0700
committerCommit bot <commit-bot@chromium.org>2014-08-28 05:50:25 +0000
commit7def98aadf7cac26952eae1fb3294f56510d67d7 (patch)
treef801f90bf343976a70a653c8bd696e6b6b60db79 /tools/valgrind
parent6b4a887992b2c27041007630b233f402ddaed9a2 (diff)
downloadchromium_src-7def98aadf7cac26952eae1fb3294f56510d67d7.zip
chromium_src-7def98aadf7cac26952eae1fb3294f56510d67d7.tar.gz
chromium_src-7def98aadf7cac26952eae1fb3294f56510d67d7.tar.bz2
Avoid deadlock between Pipeline and RendererImpl.
Both Pipeline and RendererImpl use it's own lock. We could end up with a dead lock in the following scenario: - On main thread, Pipeline holds it's lock (lock A) and calls into RendererImpl, which also requires the RendererImpl's lock (lock B). - On media thread, RendererImpl holds it's lock B and calls callback provided by the Pipeline, which requires lock A. This CL makes sure Pipeline never calls into RendererImpl while holding lock A and RendererImpl nevers calls (back) into Pipeline while holding lock B. So deadlock should not happen. This CL also reverts 3 CLs that disabled various tests due to the bug: - Revert "Exclude tests that deadlock under DrMemory (and Tsan)" This reverts commit 0e014b9ad964236d67db60488168dbc0811655e9. - Revert "Disable deadlock-y tests in TSan instead of just suppressing the error." This reverts commit f712d106692d782f2a590a8e752f720ad76ee608. - Revert "Suppress a deadlock report through media::Pipeline::GetMediaTime." This reverts commit 5c72e0f67ce7e42804d809183bdae190024056ef. BUG=407452 TEST=Ran PipelineIntegrationTest.ChunkDemuxerAbortRead_VideoOnly in a TSAN build for 10 mins and didn't see any issue. Review URL: https://codereview.chromium.org/512973002 Cr-Commit-Position: refs/heads/master@{#292332}
Diffstat (limited to 'tools/valgrind')
-rw-r--r--tools/valgrind/gtest_exclude/content_browsertests.gtest-drmemory.txt5
1 files changed, 0 insertions, 5 deletions
diff --git a/tools/valgrind/gtest_exclude/content_browsertests.gtest-drmemory.txt b/tools/valgrind/gtest_exclude/content_browsertests.gtest-drmemory.txt
index d911769..b2e560d 100644
--- a/tools/valgrind/gtest_exclude/content_browsertests.gtest-drmemory.txt
+++ b/tools/valgrind/gtest_exclude/content_browsertests.gtest-drmemory.txt
@@ -4,8 +4,3 @@ WebRtcBrowserTest.NoCrashWhenConnectChromiumSinkToRemoteTrack
# crbug.com/400490
PluginTest.PluginSingleRangeRequest
PluginTest.PluginThreadAsyncCall
-
-# crbug.com/407452
-*/MediaTest.*
-MediaSourceTest.*
-*/EncryptedMediaTest.*