Issue metadata
Sign in to add a comment
|
WebRtcGetUserMediaBrowserTest.TwoGetUserMedia* tests fail under TSAN |
||||||||||||||||||||||
Issue descriptionFrom https://luci-logdog.appspot.com/v/?s=chromium%2Fbb%2Fchromium.memory%2FLinux_TSan_Tests%2F3825%2F%2B%2Frecipes%2Fsteps%2Fcontent_browsertests%2F0%2Flogs%2FWebRtcGetUserMediaBrowserTest.TwoGetUserMediaWithSecondVideoCroppedOldConstraints%2F0 SUMMARY: ThreadSanitizer: data race base/feature_list.cc:284:14 in base::FeatureList::ClearInstanceForTesting() The test started to fail in https://uberchromegw.corp.google.com/i/chromium.memory/builders/Linux%20TSan%20Tests/builds/3825, but I am not able to find the culprit CL... :-(
,
Apr 8 2017
There's a large number of WebRtcGetUserMediaBrowserTests failing in this way on the TSan bot:
TwoGetUserMediaWithFirstHdSecondVga in build 3839
TwoGetUserMediaWithFirstHdSecondVgaOldConstraints in build 3834 and 3826
TwoGetUserMediaWithSecondVideoCroppedOldConstraints in build 3825
TwoGetUserMediaWithSecondVideoCropped in build 3832
Please fix or disable them ASAP. Thanks!
Example test output below, for the record (since it has detailed information about the race):
WebRtcGetUserMediaBrowserTest.TwoGetUserMediaWithFirstHdSecondVga (run #1):
[ RUN ] WebRtcGetUserMediaBrowserTest.TwoGetUserMediaWithFirstHdSecondVga
[24151:24151:0407/161200.715548:24804560048:WARNING:audio_manager.cc(295)] Multiple instances of AudioManager detected
[24151:24151:0407/161200.715769:24804560218:WARNING:audio_manager.cc(254)] Multiple instances of AudioManager detected
Xlib: extension "RANDR" missing on display ":99".
==================
WARNING: ThreadSanitizer: data race (pid=24151)
Write of size 8 at 0x00000974cb50 by main thread:
#0 base::FeatureList::ClearInstanceForTesting() base/feature_list.cc:284:14 (content_browsertests+0x2c3b663)
#1 base::test::ScopedFeatureList::InitWithFeatureList(std::__1::unique_ptr<base::FeatureList, std::__1::default_delete<base::FeatureList> >) base/test/scoped_feature_list.cc:53:28 (content_browsertests+0x2760c56)
#2 InitFromCommandLine base/test/scoped_feature_list.cc:62:3 (content_browsertests+0x2760e97)
#3 base::test::ScopedFeatureList::InitAndDisableFeature(base::Feature const&) base/test/scoped_feature_list.cc:70 (content_browsertests+0x2760e97)
#4 content::WebRtcGetUserMediaBrowserTest_TwoGetUserMediaWithFirstHdSecondVga_Test::RunTestOnMainThread() content/browser/webrtc/webrtc_getusermedia_browsertest.cc:562:23 (content_browsertests+0xa9c407)
#5 content::ContentBrowserTest::RunTestOnMainThreadLoop() content/public/test/content_browser_test.cc:138:3 (content_browsertests+0x2722bd8)
#6 content::BrowserTestBase::ProxyRunTestOnMainThreadLoop() content/public/test/browser_test_base.cc:346:5 (content_browsertests+0x272ffd5)
#7 Invoke<content::BrowserTestBase *> base/bind_internal.h:214:12 (content_browsertests+0x2730b95)
#8 MakeItSo<void (content::BrowserTestBase::*const &)(), content::BrowserTestBase *> base/bind_internal.h:285 (content_browsertests+0x2730b95)
#9 RunImpl<void (content::BrowserTestBase::*const &)(), const std::__1::tuple<base::internal::UnretainedWrapper<content::BrowserTestBase> > &, 0> base/bind_internal.h:361 (content_browsertests+0x2730b95)
#10 base::internal::Invoker<base::internal::BindState<void (content::BrowserTestBase::*)(), base::internal::UnretainedWrapper<content::BrowserTestBase> >, void ()>::Run(base::internal::BindStateBase*) base/bind_internal.h:339 (content_browsertests+0x2730b95)
#11 Run base/callback.h:80:12 (content_browsertests+0x27be8f1)
#12 content::ShellBrowserMainParts::PreMainMessageLoopRun() content/shell/browser/shell_browser_main_parts.cc:196 (content_browsertests+0x27be8f1)
#13 content::BrowserMainLoop::PreMainMessageLoopRun() content/browser/browser_main_loop.cc:1157:13 (content_browsertests+0x1fd8b30)
#14 Invoke<content::BrowserMainLoop *> base/bind_internal.h:214:12 (content_browsertests+0x1fdbcd5)
#15 MakeItSo<int (content::BrowserMainLoop::*const &)(), content::BrowserMainLoop *> base/bind_internal.h:285 (content_browsertests+0x1fdbcd5)
#16 RunImpl<int (content::BrowserMainLoop::*const &)(), const std::__1::tuple<base::internal::UnretainedWrapper<content::BrowserMainLoop> > &, 0> base/bind_internal.h:361 (content_browsertests+0x1fdbcd5)
#17 base::internal::Invoker<base::internal::BindState<int (content::BrowserMainLoop::*)(), base::internal::UnretainedWrapper<content::BrowserMainLoop> >, int ()>::Run(base::internal::BindStateBase*) base/bind_internal.h:339 (content_browsertests+0x1fdbcd5)
#18 Run base/callback.h:80:12 (content_browsertests+0x24a36fc)
#19 content::StartupTaskRunner::RunAllTasksNow() content/browser/startup_task_runner.cc:45 (content_browsertests+0x24a36fc)
#20 content::BrowserMainLoop::CreateStartupTasks() content/browser/browser_main_loop.cc:955:25 (content_browsertests+0x1fd68f3)
#21 content::BrowserMainRunnerImpl::Initialize(content::MainFunctionParams const&) content/browser/browser_main_runner.cc:125:17 (content_browsertests+0x1fdc596)
#22 ShellBrowserMain(content::MainFunctionParams const&, std::__1::unique_ptr<content::BrowserMainRunner, std::__1::default_delete<content::BrowserMainRunner> > const&) content/shell/browser/shell_browser_main.cc:23:32 (content_browsertests+0x279a487)
#23 content::ShellMainDelegate::RunProcess(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, content::MainFunctionParams const&) content/shell/app/shell_main_delegate.cc:297:16 (content_browsertests+0x278cc73)
#24 content::RunNamedProcessTypeMain(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, content::MainFunctionParams const&, content::ContentMainDelegate*) content/app/content_main_runner.cc:424:35 (content_browsertests+0x1ec439b)
#25 content::ContentMainRunnerImpl::Run() content/app/content_main_runner.cc:729:12 (content_browsertests+0x1ec4ef4)
#26 content::ContentServiceManagerMainDelegate::Run() content/app/content_service_manager_main_delegate.cc:36:32 (content_browsertests+0xfadd4f)
#27 service_manager::Main(service_manager::MainParams const&) services/service_manager/embedder/main.cc:179:25 (content_browsertests+0x4109f2c)
#28 content::ContentMain(content::ContentMainParams const&) content/app/content_main.cc:19:10 (content_browsertests+0xfadeab)
#29 content::BrowserTestBase::SetUp() content/public/test/browser_test_base.cc:312:3 (content_browsertests+0x272fc4f)
#30 content::ContentBrowserTest::SetUp() content/public/test/content_browser_test.cc:94:20 (content_browsertests+0x2722a56)
#31 content::WebRtcContentBrowserTestBase::SetUp() content/browser/webrtc/webrtc_content_browsertest_base.cc:47:23 (content_browsertests+0xa950b1)
#32 HandleExceptionsInMethodIfSupported<testing::Test, void> testing/gtest/src/gtest.cc:2458:12 (content_browsertests+0x29d17c6)
#33 testing::Test::Run() testing/gtest/src/gtest.cc:2470 (content_browsertests+0x29d17c6)
#34 testing::TestInfo::Run() testing/gtest/src/gtest.cc:2656:11 (content_browsertests+0x29d266d)
#35 testing::TestCase::Run() testing/gtest/src/gtest.cc:2774:28 (content_browsertests+0x29d2db6)
#36 testing::internal::UnitTestImpl::RunAllTests() testing/gtest/src/gtest.cc:4647:43 (content_browsertests+0x29ddab6)
#37 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> testing/gtest/src/gtest.cc:2458:12 (content_browsertests+0x29dd3e2)
#38 testing::UnitTest::Run() testing/gtest/src/gtest.cc:4255 (content_browsertests+0x29dd3e2)
#39 RUN_ALL_TESTS testing/gtest/include/gtest/gtest.h:2237:46 (content_browsertests+0x2761477)
#40 base::TestSuite::Run() base/test/test_suite.cc:271 (content_browsertests+0x2761477)
#41 content::ContentTestLauncherDelegate::RunTestSuite(int, char**) content/test/content_test_launcher.cc:105:48 (content_browsertests+0x272795b)
#42 content::LaunchTests(content::TestLauncherDelegate*, int, int, char**) content/public/test/test_launcher.cc:520:31 (content_browsertests+0x274d29d)
#43 main content/test/content_test_launcher.cc:131:10 (content_browsertests+0x27278e2)
Previous read of size 8 at 0x00000974cb50 by thread T17:
#0 base::FeatureList::IsEnabled(base::Feature const&) base/feature_list.cc:218:8 (content_browsertests+0x2c3b206)
#1 net::CertVerifyProc::CertVerifyProc() net/cert/cert_verify_proc.cc:523:32 (content_browsertests+0x36ec25b)
#2 net::CertVerifyProcNSS::CertVerifyProcNSS() net/cert/cert_verify_proc_nss.cc:769:20 (content_browsertests+0x36edd2d)
#3 net::CertVerifyProc::CreateDefault() net/cert/cert_verify_proc.cc:506:14 (content_browsertests+0x36ec1f3)
#4 net::CertVerifier::CreateDefault() net/cert/cert_verifier.cc:86:11 (content_browsertests+0x369bc6a)
#5 content::ShellURLRequestContextGetter::GetURLRequestContext() content/shell/browser/shell_url_request_context_getter.cc:166:33 (content_browsertests+0x27c32a5)
#6 content::ChromeAppCacheService::InitializeOnIOThread(base::FilePath const&, content::ResourceContext*, net::URLRequestContextGetter*, scoped_refptr<storage::SpecialStoragePolicy>) content/browser/appcache/chrome_appcache_service.cc:44:49 (content_browsertests+0x1f8ea2c)
#7 Invoke<const scoped_refptr<content::ChromeAppCacheService> &, const base::FilePath &, content::ResourceContext *const &, net::URLRequestContextGetter *, storage::SpecialStoragePolicy *> base/bind_internal.h:214:12 (content_browsertests+0x24aca8c)
#8 MakeItSo<void (content::ChromeAppCacheService::*const &)(const base::FilePath &, content::ResourceContext *, net::URLRequestContextGetter *, scoped_refptr<storage::SpecialStoragePolicy>), const scoped_refptr<content::ChromeAppCacheService> &, const base::FilePath &, content::ResourceContext *const &, net::URLRequestContextGetter *, storage::SpecialStoragePolicy *> base/bind_internal.h:285 (content_browsertests+0x24aca8c)
#9 RunImpl<void (content::ChromeAppCacheService::*const &)(const base::FilePath &, content::ResourceContext *, net::URLRequestContextGetter *, scoped_refptr<storage::SpecialStoragePolicy>), const std::__1::tuple<scoped_refptr<content::ChromeAppCacheService>, base::FilePath, content::ResourceContext *, base::internal::RetainedRefWrapper<net::URLRequestContextGetter>, base::internal::RetainedRefWrapper<storage::SpecialStoragePolicy> > &, 0, 1, 2, 3, 4> base/bind_internal.h:361 (content_browsertests+0x24aca8c)
#10 base::internal::Invoker<base::internal::BindState<void (content::ChromeAppCacheService::*)(base::FilePath const&, content::ResourceContext*, net::URLRequestContextGetter*, scoped_refptr<storage::SpecialStoragePolicy>), scoped_refptr<content::ChromeAppCacheService>, base::FilePath, content::ResourceContext*, base::internal::RetainedRefWrapper<net::URLRequestContextGetter>, base::internal::RetainedRefWrapper<storage::SpecialStoragePolicy> >, void ()>::Run(base::internal::BindStateBase*) base/bind_internal.h:339 (content_browsertests+0x24aca8c)
#11 Run base/callback.h:91:12 (content_browsertests+0x2d109cc)
#12 base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/debug/task_annotator.cc:59 (content_browsertests+0x2d109cc)
#13 base::MessageLoop::RunTask(base::PendingTask*) base/message_loop/message_loop.cc:423:19 (content_browsertests+0x2c60522)
#14 base::MessageLoop::DeferOrRunPendingTask(base::PendingTask) base/message_loop/message_loop.cc:434:5 (content_browsertests+0x2c60aed)
#15 base::MessageLoop::DoWork() base/message_loop/message_loop.cc:527:13 (content_browsertests+0x2c612c4)
#16 base::MessagePumpLibevent::Run(base::MessagePump::Delegate*) base/message_loop/message_pump_libevent.cc:219:31 (content_browsertests+0x2c663a0)
#17 base::MessageLoop::RunHandler() base/message_loop/message_loop.cc:387:10 (content_browsertests+0x2c6000b)
#18 base::RunLoop::Run() base/run_loop.cc:37:10 (content_browsertests+0x2c8f789)
#19 base::Thread::Run(base::RunLoop*) base/threading/thread.cc:250:13 (content_browsertests+0x2cc60a9)
#20 content::BrowserThreadImpl::IOThreadRun(base::RunLoop*) content/browser/browser_thread_impl.cc:278:11 (content_browsertests+0x1fe993f)
#21 content::BrowserThreadImpl::Run(base::RunLoop*) content/browser/browser_thread_impl.cc:313:14 (content_browsertests+0x1fe9b62)
#22 base::Thread::ThreadMain() base/threading/thread.cc:333:3 (content_browsertests+0x2cc62f4)
#23 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:71:13 (content_browsertests+0x2cbe70d)
Location is global 'base::(anonymous namespace)::g_instance' of size 8 at 0x00000974cb50 (content_browsertests+0x00000974cb50)
Thread T17 'Chrome_IOThread' (tid=24175, running) created by main thread at:
#0 pthread_create <null> (content_browsertests+0x4bd345)
#1 base::(anonymous namespace)::CreateThread(unsigned long, bool, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:110:13 (content_browsertests+0x2cbe297)
#2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:191:10 (content_browsertests+0x2cbe195)
#3 base::Thread::StartWithOptions(base::Thread::Options const&) base/threading/thread.cc:112:15 (content_browsertests+0x2cc5bcf)
#4 content::BrowserThreadImpl::StartWithOptions(base::Thread::Options const&) content/browser/browser_thread_impl.cc:404:25 (content_browsertests+0x1fea14a)
#5 content::BrowserMainLoop::CreateThreads() content/browser/browser_main_loop.cc:1130:32 (content_browsertests+0x1fd76a0)
#6 Invoke<content::BrowserMainLoop *> base/bind_internal.h:214:12 (content_browsertests+0x1fdbcd5)
#7 MakeItSo<int (content::BrowserMainLoop::*const &)(), content::BrowserMainLoop *> base/bind_internal.h:285 (content_browsertests+0x1fdbcd5)
#8 RunImpl<int (content::BrowserMainLoop::*const &)(), const std::__1::tuple<base::internal::UnretainedWrapper<content::BrowserMainLoop> > &, 0> base/bind_internal.h:361 (content_browsertests+0x1fdbcd5)
#9 base::internal::Invoker<base::internal::BindState<int (content::BrowserMainLoop::*)(), base::internal::UnretainedWrapper<content::BrowserMainLoop> >, int ()>::Run(base::internal::BindStateBase*) base/bind_internal.h:339 (content_browsertests+0x1fdbcd5)
#10 Run base/callback.h:80:12 (content_browsertests+0x24a36fc)
#11 content::StartupTaskRunner::RunAllTasksNow() content/browser/startup_task_runner.cc:45 (content_browsertests+0x24a36fc)
#12 content::BrowserMainLoop::CreateStartupTasks() content/browser/browser_main_loop.cc:955:25 (content_browsertests+0x1fd68f3)
#13 content::BrowserMainRunnerImpl::Initialize(content::MainFunctionParams const&) content/browser/browser_main_runner.cc:125:17 (content_browsertests+0x1fdc596)
#14 ShellBrowserMain(content::MainFunctionParams const&, std::__1::unique_ptr<content::BrowserMainRunner, std::__1::default_delete<content::BrowserMainRunner> > const&) content/shell/browser/shell_browser_main.cc:23:32 (content_browsertests+0x279a487)
#15 content::ShellMainDelegate::RunProcess(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, content::MainFunctionParams const&) content/shell/app/shell_main_delegate.cc:297:16 (content_browsertests+0x278cc73)
#16 content::RunNamedProcessTypeMain(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, content::MainFunctionParams const&, content::ContentMainDelegate*) content/app/content_main_runner.cc:424:35 (content_browsertests+0x1ec439b)
#17 content::ContentMainRunnerImpl::Run() content/app/content_main_runner.cc:729:12 (content_browsertests+0x1ec4ef4)
#18 content::ContentServiceManagerMainDelegate::Run() content/app/content_service_manager_main_delegate.cc:36:32 (content_browsertests+0xfadd4f)
#19 service_manager::Main(service_manager::MainParams const&) services/service_manager/embedder/main.cc:179:25 (content_browsertests+0x4109f2c)
#20 content::ContentMain(content::ContentMainParams const&) content/app/content_main.cc:19:10 (content_browsertests+0xfadeab)
#21 content::BrowserTestBase::SetUp() content/public/test/browser_test_base.cc:312:3 (content_browsertests+0x272fc4f)
#22 content::ContentBrowserTest::SetUp() content/public/test/content_browser_test.cc:94:20 (content_browsertests+0x2722a56)
#23 content::WebRtcContentBrowserTestBase::SetUp() content/browser/webrtc/webrtc_content_browsertest_base.cc:47:23 (content_browsertests+0xa950b1)
#24 HandleExceptionsInMethodIfSupported<testing::Test, void> testing/gtest/src/gtest.cc:2458:12 (content_browsertests+0x29d17c6)
#25 testing::Test::Run() testing/gtest/src/gtest.cc:2470 (content_browsertests+0x29d17c6)
#26 testing::TestInfo::Run() testing/gtest/src/gtest.cc:2656:11 (content_browsertests+0x29d266d)
#27 testing::TestCase::Run() testing/gtest/src/gtest.cc:2774:28 (content_browsertests+0x29d2db6)
#28 testing::internal::UnitTestImpl::RunAllTests() testing/gtest/src/gtest.cc:4647:43 (content_browsertests+0x29ddab6)
#29 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> testing/gtest/src/gtest.cc:2458:12 (content_browsertests+0x29dd3e2)
#30 testing::UnitTest::Run() testing/gtest/src/gtest.cc:4255 (content_browsertests+0x29dd3e2)
#31 RUN_ALL_TESTS testing/gtest/include/gtest/gtest.h:2237:46 (content_browsertests+0x2761477)
#32 base::TestSuite::Run() base/test/test_suite.cc:271 (content_browsertests+0x2761477)
#33 content::ContentTestLauncherDelegate::RunTestSuite(int, char**) content/test/content_test_launcher.cc:105:48 (content_browsertests+0x272795b)
#34 content::LaunchTests(content::TestLauncherDelegate*, int, int, char**) content/public/test/test_launcher.cc:520:31 (content_browsertests+0x274d29d)
#35 main content/test/content_test_launcher.cc:131:10 (content_browsertests+0x27278e2)
SUMMARY: ThreadSanitizer: data race base/feature_list.cc:284:14 in base::FeatureList::ClearInstanceForTesting()
==================
[ OK ] WebRtcGetUserMediaBrowserTest.TwoGetUserMediaWithFirstHdSecondVga (34260 ms)
[----------] 1 test from WebRtcGetUserMediaBrowserTest (34260 ms total)
[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (34260 ms total)
[ PASSED ] 1 test.
ThreadSanitizer: reported 1 warnings
ThreadSanitizer: Matched 1 suppressions (pid=24151):
1 deadlock:dbus::Bus::ShutdownAndBlock
,
Apr 8 2017
,
Apr 9 2017
AFAICT, the TwoGetUserMedia* tests stopped flaking after a fix I landed yesterday. There are other WebRtc browser tests flaking, but they are unrelated to the TwoGetUserMedia* flakes. They were flaking from before: https://uberchromegw.corp.google.com/i/chromium.memory/builders/Linux%20TSan%20Tests/builds/3714
,
Apr 9 2017
|
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by lukasza@chromium.org
, Apr 7 2017Status: Assigned (was: Untriaged)