New issue
Advanced search Search tips

Issue 736268 link

Starred by 3 users

Issue metadata

Status: Started
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug

Blocked on:
issue 684640



Sign in to add a comment

Some WebRTC tests flaking on TSan

Project Member Reported by msramek@chromium.org, Jun 23 2017

Issue description

WebRtcMediaRecorderTest.IllegalStopThrowsDOMError
https://build.chromium.org/p/chromium.memory/builders/Linux%20TSan%20Tests/builds/7833

WebRtcMediaRecorderTest.IllegalStartWhilePausedThrowsDOMError
https://build.chromium.org/p/chromium.memory/builders/Linux%20TSan%20Tests/builds/7834

 
WARNING: ThreadSanitizer: data race (pid=29944)
  Read of size 8 at 0x7b040000f040 by thread T19:
    #0 base::BaseTimerTaskInternal::Run() base/timer/timer.cc:40:10 (content_browsertests+0x2da0c6a)
    #1 Invoke<base::BaseTimerTaskInternal *> base/bind_internal.h:209:12 (content_browsertests+0x2da0ee5)
    #2 MakeItSo<void (base::BaseTimerTaskInternal::*)(), base::BaseTimerTaskInternal *> base/bind_internal.h:275 (content_browsertests+0x2da0ee5)
    #3 RunImpl<void (base::BaseTimerTaskInternal::*)(), std::__1::tuple<base::internal::OwnedWrapper<base::BaseTimerTaskInternal> >, 0> base/bind_internal.h:351 (content_browsertests+0x2da0ee5)
    #4 base::internal::Invoker<base::internal::BindState<void (base::BaseTimerTaskInternal::*)(), base::internal::OwnedWrapper<base::BaseTimerTaskInternal> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:316 (content_browsertests+0x2da0ee5)
    #5 Run base/callback.h:91:12 (content_browsertests+0x2dea41c)
    #6 base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/debug/task_annotator.cc:59 (content_browsertests+0x2dea41c)
    #7 base::MessageLoop::RunTask(base::PendingTask*) base/message_loop/message_loop.cc:422:19 (content_browsertests+0x2d326a2)
    #8 base::MessageLoop::DeferOrRunPendingTask(base::PendingTask) base/message_loop/message_loop.cc:433:5 (content_browsertests+0x2d32d7b)
    #9 base::MessageLoop::DoDelayedWork(base::TimeTicks*) base/message_loop/message_loop.cc:580:10 (content_browsertests+0x2d33540)
    #10 base::MessagePumpDefault::Run(base::MessagePump::Delegate*) base/message_loop/message_pump_default.cc:37:27 (content_browsertests+0x2d369e4)
    #11 Run base/message_loop/message_loop.cc:369:10 (content_browsertests+0x2d32107)
    #12 non-virtual thunk to base::MessageLoop::Run() base/message_loop/message_loop.cc (content_browsertests+0x2d32107)
    #13 base::RunLoop::Run() base/run_loop.cc:111:14 (content_browsertests+0x2d637cb)
    #14 base::Thread::Run(base::RunLoop*) base/threading/thread.cc:255:13 (content_browsertests+0x2d9c9c9)
    #15 base::Thread::ThreadMain() base/threading/thread.cc:338:3 (content_browsertests+0x2d9cc8e)
    #16 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:71:13 (content_browsertests+0x2d939dd)
  Previous write of size 8 at 0x7b040000f040 by thread T17:
    #0 Abandon base/timer/timer.cc:54:27 (content_browsertests+0x2da0df8)
    #1 AbandonScheduledTask base/timer/timer.cc:224 (content_browsertests+0x2da0df8)
    #2 AbandonAndStop base/timer/timer.h:171 (content_browsertests+0x2da0df8)
    #3 base::Timer::~Timer() base/timer/timer.cc:103 (content_browsertests+0x2da0df8)
    #4 media::AudioInputController::~AudioInputController() media/audio/audio_input_controller.cc:204:1 (content_browsertests+0xeab129)
    #5 media::AudioInputController::~AudioInputController() media/audio/audio_input_controller.cc:200:47 (content_browsertests+0xeab1d9)
    #6 DeleteInternal base/memory/ref_counted.h:346:44 (content_browsertests+0x235570b)
    #7 Destruct base/memory/ref_counted.h:301 (content_browsertests+0x235570b)
    #8 Release base/memory/ref_counted.h:337 (content_browsertests+0x235570b)
    #9 Release base/memory/ref_counted.h:605 (content_browsertests+0x235570b)
    #10 ~scoped_refptr base/memory/ref_counted.h:500 (content_browsertests+0x235570b)
    #11 ~AudioEntry content/browser/renderer_host/media/audio_input_renderer_host.cc:88 (content_browsertests+0x235570b)
    #12 operator() buildtools/third_party/libc++/trunk/include/memory:2272 (content_browsertests+0x235570b)
    #13 reset buildtools/third_party/libc++/trunk/include/memory:2585 (content_browsertests+0x235570b)
    #14 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2539 (content_browsertests+0x235570b)
    #15 content::AudioInputRendererHost::DeleteEntry(content::AudioInputRendererHost::AudioEntry*) content/browser/renderer_host/media/audio_input_renderer_host.cc:504 (content_browsertests+0x235570b)
    #16 Invoke<scoped_refptr<content::AudioInputRendererHost>, content::AudioInputRendererHost::AudioEntry *> base/bind_internal.h:209:12 (content_browsertests+0x2355fc5)
    #17 MakeItSo<void (content::AudioInputRendererHost::*)(content::AudioInputRendererHost::AudioEntry *), scoped_refptr<content::AudioInputRendererHost>, content::AudioInputRendererHost::AudioEntry *> base/bind_internal.h:275 (content_browsertests+0x2355fc5)
    #18 RunImpl<void (content::AudioInputRendererHost::*)(content::AudioInputRendererHost::AudioEntry *), std::__1::tuple<scoped_refptr<content::AudioInputRendererHost>, content::AudioInputRendererHost::AudioEntry *>, 0, 1> base/bind_internal.h:351 (content_browsertests+0x2355fc5)
    #19 base::internal::Invoker<base::internal::BindState<void (content::AudioInputRendererHost::*)(content::AudioInputRendererHost::AudioEntry*), scoped_refptr<content::AudioInputRendererHost>, content::AudioInputRendererHost::AudioEntry*>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:316 (content_browsertests+0x2355fc5)
    #20 Run base/callback.h:91:12 (content_browsertests+0x2d93cf0)
    #21 base::(anonymous namespace)::PostTaskAndReplyRelay::RunReplyAndSelfDestruct() base/threading/post_task_and_reply_impl.cc:60 (content_browsertests+0x2d93cf0)
    #22 Invoke<base::(anonymous namespace)::PostTaskAndReplyRelay *> base/bind_internal.h:209:12 (content_browsertests+0x2d93dd5)
    #23 MakeItSo<void (base::(anonymous namespace)::PostTaskAndReplyRelay::*)(), base::(anonymous namespace)::PostTaskAndReplyRelay *> base/bind_internal.h:275 (content_browsertests+0x2d93dd5)
    #24 RunImpl<void (base::(anonymous namespace)::PostTaskAndReplyRelay::*)(), std::__1::tuple<base::internal::UnretainedWrapper<base::(anonymous namespace)::PostTaskAndReplyRelay> >, 0> base/bind_internal.h:351 (content_browsertests+0x2d93dd5)
    #25 base::internal::Invoker<base::internal::BindState<void (base::(anonymous namespace)::PostTaskAndReplyRelay::*)(), base::internal::UnretainedWrapper<base::(anonymous namespace)::PostTaskAndReplyRelay> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:316 (content_browsertests+0x2d93dd5)
    #26 Run base/callback.h:91:12 (content_browsertests+0x2dea41c)
    #27 base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/debug/task_annotator.cc:59 (content_browsertests+0x2dea41c)
    #28 base::MessageLoop::RunTask(base::PendingTask*) base/message_loop/message_loop.cc:422:19 (content_browsertests+0x2d326a2)
    #29 base::MessageLoop::DeferOrRunPendingTask(base::PendingTask) base/message_loop/message_loop.cc:433:5 (content_browsertests+0x2d32d7b)
    #30 base::MessageLoop::DoWork() base/message_loop/message_loop.cc:540:13 (content_browsertests+0x2d3321b)
    #31 base::MessagePumpLibevent::Run(base::MessagePump::Delegate*) base/message_loop/message_pump_libevent.cc:219:31 (content_browsertests+0x2d37ff0)
    #32 Run base/message_loop/message_loop.cc:369:10 (content_browsertests+0x2d32107)
    #33 non-virtual thunk to base::MessageLoop::Run() base/message_loop/message_loop.cc (content_browsertests+0x2d32107)
    #34 base::RunLoop::Run() base/run_loop.cc:111:14 (content_browsertests+0x2d637cb)
    #35 base::Thread::Run(base::RunLoop*) base/threading/thread.cc:255:13 (content_browsertests+0x2d9c9c9)
    #36 content::BrowserThreadImpl::IOThreadRun(base::RunLoop*) content/browser/browser_thread_impl.cc:278:11 (content_browsertests+0x1fc502f)
    #37 content::BrowserThreadImpl::Run(base::RunLoop*) content/browser/browser_thread_impl.cc:313:14 (content_browsertests+0x1fc52a4)
    #38 base::Thread::ThreadMain() base/threading/thread.cc:338:3 (content_browsertests+0x2d9cc8e)
    #39 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:71:13 (content_browsertests+0x2d939dd)
  Location is heap block of size 8 at 0x7b040000f040 allocated by thread T19:
    #0 operator new(unsigned long) <null> (content_browsertests+0x531c52)
    #1 base::Timer::PostNewScheduledTask(base::TimeDelta) base/timer/timer.cc:197:21 (content_browsertests+0x2da09a7)
    #2 base::Timer::Reset() base/timer/timer.cc (content_browsertests+0x2da039d)
    #3 base::Timer::Start(tracked_objects::Location const&, base::TimeDelta, base::Callback<void (), (base::internal::CopyMode)1, (base::internal::RepeatMode)1> const&) base/timer/timer.cc:137:3 (content_browsertests+0x2da090a)
    #4 Start<media::AudioInputController> base/timer/timer.h:250:12 (content_browsertests+0xeabd75)
    #5 media::AudioInputController::DoCreateForStream(media::AudioInputStream*, bool) media/audio/audio_input_controller.cc:367 (content_browsertests+0xeabd75)
    #6 media::AudioInputController::DoCreate(media::AudioManager*, media::AudioParameters const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, bool) media/audio/audio_input_controller.cc:325:3 (content_browsertests+0xeab798)
    #7 Invoke<scoped_refptr<media::AudioInputController>, media::AudioManager *, media::AudioParameters, std::__1::basic_string<char>, bool> base/bind_internal.h:209:12 (content_browsertests+0xeadf0e)
    #8 MakeItSo<void (media::AudioInputController::*)(media::AudioManager *, const media::AudioParameters &, const std::__1::basic_string<char> &, bool), scoped_refptr<media::AudioInputController>, media::AudioManager *, media::AudioParameters, std::__1::basic_string<char>, bool> base/bind_internal.h:275 (content_browsertests+0xeadf0e)
    #9 RunImpl<void (media::AudioInputController::*)(media::AudioManager *, const media::AudioParameters &, const std::__1::basic_string<char> &, bool), std::__1::tuple<scoped_refptr<media::AudioInputController>, base::internal::UnretainedWrapper<media::AudioManager>, media::AudioParameters, std::__1::basic_string<char>, bool>, 0, 1, 2, 3, 4> base/bind_internal.h:351 (content_browsertests+0xeadf0e)
    #10 base::internal::Invoker<base::internal::BindState<void (media::AudioInputController::*)(media::AudioManager*, media::AudioParameters const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, bool), scoped_refptr<media::AudioInputController>, base::internal::UnretainedWrapper<media::AudioManager>, media::AudioParameters, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:316 (content_browsertests+0xeadf0e)
    #11 Run base/callback.h:91:12 (content_browsertests+0x2dea41c)
    #12 base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/debug/task_annotator.cc:59 (content_browsertests+0x2dea41c)
    #13 base::MessageLoop::RunTask(base::PendingTask*) base/message_loop/message_loop.cc:422:19 (content_browsertests+0x2d326a2)
    #14 base::MessageLoop::DeferOrRunPendingTask(base::PendingTask) base/message_loop/message_loop.cc:433:5 (content_browsertests+0x2d32d7b)
    #15 base::MessageLoop::DoWork() base/message_loop/message_loop.cc:540:13 (content_browsertests+0x2d3321b)
    #16 base::MessagePumpDefault::Run(base::MessagePump::Delegate*) base/message_loop/message_pump_default.cc:33:31 (content_browsertests+0x2d36a61)
    #17 Run base/message_loop/message_loop.cc:369:10 (content_browsertests+0x2d32107)
    #18 non-virtual thunk to base::MessageLoop::Run() base/message_loop/message_loop.cc (content_browsertests+0x2d32107)
    #19 base::RunLoop::Run() base/run_loop.cc:111:14 (content_browsertests+0x2d637cb)
    #20 base::Thread::Run(base::RunLoop*) base/threading/thread.cc:255:13 (content_browsertests+0x2d9c9c9)
    #21 base::Thread::ThreadMain() base/threading/thread.cc:338:3 (content_browsertests+0x2d9cc8e)
    #22 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:71:13 (content_browsertests+0x2d939dd)
  Thread T19 'AudioThread' (tid=30008, running) created by main thread at:
    #0 pthread_create <null> (content_browsertests+0x4cd703)
    #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+0x2d93567)
    #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:193:10 (content_browsertests+0x2d93465)
    #3 base::Thread::StartWithOptions(base::Thread::Options const&) base/threading/thread.cc:112:15 (content_browsertests+0x2d9c4f8)
    #4 base::Thread::Start() base/threading/thread.cc:75:10 (content_browsertests+0x2d9c31b)
    #5 media::AudioThreadImpl::AudioThreadImpl() media/audio/audio_thread_impl.cc:15:3 (content_browsertests+0xec5d3f)
    #6 MakeUnique<media::AudioThreadImpl> base/memory/ptr_util.h:56:33 (content_browsertests+0x1fb5fba)
    #7 content::BrowserMainLoop::CreateAudioManager() content/browser/browser_main_loop.cc:1775 (content_browsertests+0x1fb5fba)
    #8 content::BrowserMainLoop::BrowserThreadsStarted() content/browser/browser_main_loop.cc:1486:5 (content_browsertests+0x1fb2d5e)
    #9 Invoke<content::BrowserMainLoop *> base/bind_internal.h:209:12 (content_browsertests+0x1fb6c95)
    #10 MakeItSo<int (content::BrowserMainLoop::*const &)(), content::BrowserMainLoop *> base/bind_internal.h:275 (content_browsertests+0x1fb6c95)
    #11 RunImpl<int (content::BrowserMainLoop::*const &)(), const std::__1::tuple<base::internal::UnretainedWrapper<content::BrowserMainLoop> > &, 0> base/bind_internal.h:351 (content_browsertests+0x1fb6c95)
    #12 base::internal::Invoker<base::internal::BindState<int (content::BrowserMainLoop::*)(), base::internal::UnretainedWrapper<content::BrowserMainLoop> >, int ()>::Run(base::internal::BindStateBase*) base/bind_internal.h:329 (content_browsertests+0x1fb6c95)
    #13 Run base/callback.h:80:12 (content_browsertests+0x24fcd3e)
    #14 content::StartupTaskRunner::RunAllTasksNow() content/browser/startup_task_runner.cc:45 (content_browsertests+0x24fcd3e)
    #15 content::BrowserMainLoop::CreateStartupTasks() content/browser/browser_main_loop.cc:931:25 (content_browsertests+0x1fb19b2)
    #16 content::BrowserMainRunnerImpl::Initialize(content::MainFunctionParams const&) content/browser/browser_main_runner.cc:127:17 (content_browsertests+0x1fb751d)
    #17 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+0x288f7b7)
    #18 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:313:16 (content_browsertests+0x2884783)
    #19 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:398:35 (content_browsertests+0x1e8386b)
    #20 content::ContentMainRunnerImpl::Run() content/app/content_main_runner.cc:704:12 (content_browsertests+0x1e846ce)
    #21 content::ContentServiceManagerMainDelegate::RunEmbedderProcess() content/app/content_service_manager_main_delegate.cc:41:32 (content_browsertests+0x10db4bf)
    #22 service_manager::Main(service_manager::MainParams const&) services/service_manager/embedder/main.cc:469:29 (content_browsertests+0x437809b)
    #23 content::ContentMain(content::ContentMainParams const&) content/app/content_main.cc:19:10 (content_browsertests+0x10dbc4b)
    #24 content::BrowserTestBase::SetUp() content/public/test/browser_test_base.cc:270:3 (content_browsertests+0x281efb1)
    #25 content::ContentBrowserTest::SetUp() content/public/test/content_browser_test.cc:89:20 (content_browsertests+0x2810376)
    #26 content::WebRtcContentBrowserTestBase::SetUp() content/browser/webrtc/webrtc_content_browsertest_base.cc:47:23 (content_browsertests+0xb5f191)
    #27 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc:2455:12 (content_browsertests+0x27e4ba6)
    #28 testing::Test::Run() third_party/googletest/src/googletest/src/gtest.cc:2467 (content_browsertests+0x27e4ba6)
    #29 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2653:11 (content_browsertests+0x27e5a1d)
    #30 testing::TestCase::Run() third_party/googletest/src/googletest/src/gtest.cc:2771:28 (content_browsertests+0x27e6256)
    #31 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:4648:43 (content_browsertests+0x27ef156)
    #32 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc:2455:12 (content_browsertests+0x27eeb54)
    #33 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4256 (content_browsertests+0x27eeb54)
    #34 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2237:46 (content_browsertests+0x2857ba5)
    #35 base::TestSuite::Run() base/test/test_suite.cc:271 (content_browsertests+0x2857ba5)
    #36 content::ContentTestLauncherDelegate::RunTestSuite(int, char**) content/test/content_test_launcher.cc:105:48 (content_browsertests+0x28155ab)
    #37 content::LaunchTests(content::TestLauncherDelegate*, int, int, char**) content/public/test/test_launcher.cc:520:31 (content_browsertests+0x284069d)
    #38 main content/test/content_test_launcher.cc:131:10 (content_browsertests+0x2815532)
  Thread T17 'Chrome_IOThread' (tid=30000, running) created by main thread at:
    #0 pthread_create <null> (content_browsertests+0x4cd703)
    #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+0x2d93567)
    #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:193:10 (content_browsertests+0x2d93465)
    #3 base::Thread::StartWithOptions(base::Thread::Options const&) base/threading/thread.cc:112:15 (content_browsertests+0x2d9c4f8)
    #4 content::BrowserThreadImpl::StartWithOptions(base::Thread::Options const&) content/browser/browser_thread_impl.cc:404:25 (content_browsertests+0x1fc593a)
    #5 content::BrowserMainLoop::CreateThreads() content/browser/browser_main_loop.cc:1083:49 (content_browsertests+0x1fb2557)
    #6 Invoke<content::BrowserMainLoop *> base/bind_internal.h:209:12 (content_browsertests+0x1fb6c95)
    #7 MakeItSo<int (content::BrowserMainLoop::*const &)(), content::BrowserMainLoop *> base/bind_internal.h:275 (content_browsertests+0x1fb6c95)
    #8 RunImpl<int (content::BrowserMainLoop::*const &)(), const std::__1::tuple<base::internal::UnretainedWrapper<content::BrowserMainLoop> > &, 0> base/bind_internal.h:351 (content_browsertests+0x1fb6c95)
    #9 base::internal::Invoker<base::internal::BindState<int (content::BrowserMainLoop::*)(), base::internal::UnretainedWrapper<content::BrowserMainLoop> >, int ()>::Run(base::internal::BindStateBase*) base/bind_internal.h:329 (content_browsertests+0x1fb6c95)
    #10 Run base/callback.h:80:12 (content_browsertests+0x24fcd3e)
    #11 content::StartupTaskRunner::RunAllTasksNow() content/browser/startup_task_runner.cc:45 (content_browsertests+0x24fcd3e)
    #12 content::BrowserMainLoop::CreateStartupTasks() content/browser/browser_main_loop.cc:931:25 (content_browsertests+0x1fb19b2)
    #13 content::BrowserMainRunnerImpl::Initialize(content::MainFunctionParams const&) content/browser/browser_main_runner.cc:127:17 (content_browsertests+0x1fb751d)
    #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+0x288f7b7)
    #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:313:16 (content_browsertests+0x2884783)
    #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:398:35 (content_browsertests+0x1e8386b)
    #17 content::ContentMainRunnerImpl::Run() content/app/content_main_runner.cc:704:12 (content_browsertests+0x1e846ce)
    #18 content::ContentServiceManagerMainDelegate::RunEmbedderProcess() content/app/content_service_manager_main_delegate.cc:41:32 (content_browsertests+0x10db4bf)
    #19 service_manager::Main(service_manager::MainParams const&) services/service_manager/embedder/main.cc:469:29 (content_browsertests+0x437809b)
    #20 content::ContentMain(content::ContentMainParams const&) content/app/content_main.cc:19:10 (content_browsertests+0x10dbc4b)
    #21 content::BrowserTestBase::SetUp() content/public/test/browser_test_base.cc:270:3 (content_browsertests+0x281efb1)
    #22 content::ContentBrowserTest::SetUp() content/public/test/content_browser_test.cc:89:20 (content_browsertests+0x2810376)
    #23 content::WebRtcContentBrowserTestBase::SetUp() content/browser/webrtc/webrtc_content_browsertest_base.cc:47:23 (content_browsertests+0xb5f191)
    #24 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc:2455:12 (content_browsertests+0x27e4ba6)
    #25 testing::Test::Run() third_party/googletest/src/googletest/src/gtest.cc:2467 (content_browsertests+0x27e4ba6)
    #26 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2653:11 (content_browsertests+0x27e5a1d)
    #27 testing::TestCase::Run() third_party/googletest/src/googletest/src/gtest.cc:2771:28 (content_browsertests+0x27e6256)
    #28 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:4648:43 (content_browsertests+0x27ef156)
    #29 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc:2455:12 (content_browsertests+0x27eeb54)
    #30 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4256 (content_browsertests+0x27eeb54)
    #31 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2237:46 (content_browsertests+0x2857ba5)
    #32 base::TestSuite::Run() base/test/test_suite.cc:271 (content_browsertests+0x2857ba5)
    #33 content::ContentTestLauncherDelegate::RunTestSuite(int, char**) content/test/content_test_launcher.cc:105:48 (content_browsertests+0x28155ab)
    #34 content::LaunchTests(content::TestLauncherDelegate*, int, int, char**) content/public/test/test_launcher.cc:520:31 (content_browsertests+0x284069d)
    #35 main content/test/content_test_launcher.cc:131:10 (content_browsertests+0x2815532)
SUMMARY: ThreadSanitizer: data race base/timer/timer.cc:40:10 in base::BaseTimerTaskInternal::Run()
WARNING: ThreadSanitizer: data race (pid=17690)
  Read of size 8 at 0x7b040000a970 by thread T19:
    #0 base::BaseTimerTaskInternal::Run() base/timer/timer.cc:40:10 (content_browsertests+0x2d9ff2a)
    #1 Invoke<base::BaseTimerTaskInternal *> base/bind_internal.h:209:12 (content_browsertests+0x2da01a5)
    #2 MakeItSo<void (base::BaseTimerTaskInternal::*)(), base::BaseTimerTaskInternal *> base/bind_internal.h:275 (content_browsertests+0x2da01a5)
    #3 RunImpl<void (base::BaseTimerTaskInternal::*)(), std::__1::tuple<base::internal::OwnedWrapper<base::BaseTimerTaskInternal> >, 0> base/bind_internal.h:351 (content_browsertests+0x2da01a5)
    #4 base::internal::Invoker<base::internal::BindState<void (base::BaseTimerTaskInternal::*)(), base::internal::OwnedWrapper<base::BaseTimerTaskInternal> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:316 (content_browsertests+0x2da01a5)
    #5 Run base/callback.h:91:12 (content_browsertests+0x2de96dc)
    #6 base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/debug/task_annotator.cc:59 (content_browsertests+0x2de96dc)
    #7 base::MessageLoop::RunTask(base::PendingTask*) base/message_loop/message_loop.cc:422:19 (content_browsertests+0x2d31962)
    #8 base::MessageLoop::DeferOrRunPendingTask(base::PendingTask) base/message_loop/message_loop.cc:433:5 (content_browsertests+0x2d3203b)
    #9 base::MessageLoop::DoDelayedWork(base::TimeTicks*) base/message_loop/message_loop.cc:580:10 (content_browsertests+0x2d32800)
    #10 base::MessagePumpDefault::Run(base::MessagePump::Delegate*) base/message_loop/message_pump_default.cc:37:27 (content_browsertests+0x2d35ca4)
    #11 Run base/message_loop/message_loop.cc:369:10 (content_browsertests+0x2d313c7)
    #12 non-virtual thunk to base::MessageLoop::Run() base/message_loop/message_loop.cc (content_browsertests+0x2d313c7)
    #13 base::RunLoop::Run() base/run_loop.cc:111:14 (content_browsertests+0x2d62a8b)
    #14 base::Thread::Run(base::RunLoop*) base/threading/thread.cc:255:13 (content_browsertests+0x2d9bc89)
    #15 base::Thread::ThreadMain() base/threading/thread.cc:338:3 (content_browsertests+0x2d9bf4e)
    #16 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:71:13 (content_browsertests+0x2d92c9d)
  Previous write of size 8 at 0x7b040000a970 by thread T17:
    #0 Abandon base/timer/timer.cc:54:27 (content_browsertests+0x2da00b8)
    #1 AbandonScheduledTask base/timer/timer.cc:224 (content_browsertests+0x2da00b8)
    #2 AbandonAndStop base/timer/timer.h:171 (content_browsertests+0x2da00b8)
    #3 base::Timer::~Timer() base/timer/timer.cc:103 (content_browsertests+0x2da00b8)
    #4 media::AudioInputController::~AudioInputController() media/audio/audio_input_controller.cc:204:1 (content_browsertests+0xeaa4a9)
    #5 media::AudioInputController::~AudioInputController() media/audio/audio_input_controller.cc:200:47 (content_browsertests+0xeaa559)
    #6 DeleteInternal base/memory/ref_counted.h:346:44 (content_browsertests+0x2354a8b)
    #7 Destruct base/memory/ref_counted.h:301 (content_browsertests+0x2354a8b)
    #8 Release base/memory/ref_counted.h:337 (content_browsertests+0x2354a8b)
    #9 Release base/memory/ref_counted.h:605 (content_browsertests+0x2354a8b)
    #10 ~scoped_refptr base/memory/ref_counted.h:500 (content_browsertests+0x2354a8b)
    #11 ~AudioEntry content/browser/renderer_host/media/audio_input_renderer_host.cc:88 (content_browsertests+0x2354a8b)
    #12 operator() buildtools/third_party/libc++/trunk/include/memory:2272 (content_browsertests+0x2354a8b)
    #13 reset buildtools/third_party/libc++/trunk/include/memory:2585 (content_browsertests+0x2354a8b)
    #14 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2539 (content_browsertests+0x2354a8b)
    #15 content::AudioInputRendererHost::DeleteEntry(content::AudioInputRendererHost::AudioEntry*) content/browser/renderer_host/media/audio_input_renderer_host.cc:504 (content_browsertests+0x2354a8b)
    #16 Invoke<scoped_refptr<content::AudioInputRendererHost>, content::AudioInputRendererHost::AudioEntry *> base/bind_internal.h:209:12 (content_browsertests+0x2355345)
    #17 MakeItSo<void (content::AudioInputRendererHost::*)(content::AudioInputRendererHost::AudioEntry *), scoped_refptr<content::AudioInputRendererHost>, content::AudioInputRendererHost::AudioEntry *> base/bind_internal.h:275 (content_browsertests+0x2355345)
    #18 RunImpl<void (content::AudioInputRendererHost::*)(content::AudioInputRendererHost::AudioEntry *), std::__1::tuple<scoped_refptr<content::AudioInputRendererHost>, content::AudioInputRendererHost::AudioEntry *>, 0, 1> base/bind_internal.h:351 (content_browsertests+0x2355345)
    #19 base::internal::Invoker<base::internal::BindState<void (content::AudioInputRendererHost::*)(content::AudioInputRendererHost::AudioEntry*), scoped_refptr<content::AudioInputRendererHost>, content::AudioInputRendererHost::AudioEntry*>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:316 (content_browsertests+0x2355345)
    #20 Run base/callback.h:91:12 (content_browsertests+0x2d92fb0)
    #21 base::(anonymous namespace)::PostTaskAndReplyRelay::RunReplyAndSelfDestruct() base/threading/post_task_and_reply_impl.cc:60 (content_browsertests+0x2d92fb0)
    #22 Invoke<base::(anonymous namespace)::PostTaskAndReplyRelay *> base/bind_internal.h:209:12 (content_browsertests+0x2d93095)
    #23 MakeItSo<void (base::(anonymous namespace)::PostTaskAndReplyRelay::*)(), base::(anonymous namespace)::PostTaskAndReplyRelay *> base/bind_internal.h:275 (content_browsertests+0x2d93095)
    #24 RunImpl<void (base::(anonymous namespace)::PostTaskAndReplyRelay::*)(), std::__1::tuple<base::internal::UnretainedWrapper<base::(anonymous namespace)::PostTaskAndReplyRelay> >, 0> base/bind_internal.h:351 (content_browsertests+0x2d93095)
    #25 base::internal::Invoker<base::internal::BindState<void (base::(anonymous namespace)::PostTaskAndReplyRelay::*)(), base::internal::UnretainedWrapper<base::(anonymous namespace)::PostTaskAndReplyRelay> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:316 (content_browsertests+0x2d93095)
    #26 Run base/callback.h:91:12 (content_browsertests+0x2de96dc)
    #27 base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/debug/task_annotator.cc:59 (content_browsertests+0x2de96dc)
    #28 base::MessageLoop::RunTask(base::PendingTask*) base/message_loop/message_loop.cc:422:19 (content_browsertests+0x2d31962)
    #29 base::MessageLoop::DeferOrRunPendingTask(base::PendingTask) base/message_loop/message_loop.cc:433:5 (content_browsertests+0x2d3203b)
    #30 base::MessageLoop::DoWork() base/message_loop/message_loop.cc:540:13 (content_browsertests+0x2d324db)
    #31 base::MessagePumpLibevent::Run(base::MessagePump::Delegate*) base/message_loop/message_pump_libevent.cc:219:31 (content_browsertests+0x2d372b0)
    #32 Run base/message_loop/message_loop.cc:369:10 (content_browsertests+0x2d313c7)
    #33 non-virtual thunk to base::MessageLoop::Run() base/message_loop/message_loop.cc (content_browsertests+0x2d313c7)
    #34 base::RunLoop::Run() base/run_loop.cc:111:14 (content_browsertests+0x2d62a8b)
    #35 base::Thread::Run(base::RunLoop*) base/threading/thread.cc:255:13 (content_browsertests+0x2d9bc89)
    #36 content::BrowserThreadImpl::IOThreadRun(base::RunLoop*) content/browser/browser_thread_impl.cc:278:11 (content_browsertests+0x1fc43af)
    #37 content::BrowserThreadImpl::Run(base::RunLoop*) content/browser/browser_thread_impl.cc:313:14 (content_browsertests+0x1fc4624)
    #38 base::Thread::ThreadMain() base/threading/thread.cc:338:3 (content_browsertests+0x2d9bf4e)
    #39 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:71:13 (content_browsertests+0x2d92c9d)
  Location is heap block of size 8 at 0x7b040000a970 allocated by thread T19:
    #0 operator new(unsigned long) <null> (content_browsertests+0x531b72)
    #1 base::Timer::PostNewScheduledTask(base::TimeDelta) base/timer/timer.cc:197:21 (content_browsertests+0x2d9fc67)
    #2 base::Timer::RunScheduledTask() base/timer/timer.cc:257:5 (content_browsertests+0x2da002f)
    #3 base::BaseTimerTaskInternal::Run() base/timer/timer.cc:50:12 (content_browsertests+0x2d9ff5d)
    #4 Invoke<base::BaseTimerTaskInternal *> base/bind_internal.h:209:12 (content_browsertests+0x2da01a5)
    #5 MakeItSo<void (base::BaseTimerTaskInternal::*)(), base::BaseTimerTaskInternal *> base/bind_internal.h:275 (content_browsertests+0x2da01a5)
    #6 RunImpl<void (base::BaseTimerTaskInternal::*)(), std::__1::tuple<base::internal::OwnedWrapper<base::BaseTimerTaskInternal> >, 0> base/bind_internal.h:351 (content_browsertests+0x2da01a5)
    #7 base::internal::Invoker<base::internal::BindState<void (base::BaseTimerTaskInternal::*)(), base::internal::OwnedWrapper<base::BaseTimerTaskInternal> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:316 (content_browsertests+0x2da01a5)
    #8 Run base/callback.h:91:12 (content_browsertests+0x2de96dc)
    #9 base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/debug/task_annotator.cc:59 (content_browsertests+0x2de96dc)
    #10 base::MessageLoop::RunTask(base::PendingTask*) base/message_loop/message_loop.cc:422:19 (content_browsertests+0x2d31962)
    #11 base::MessageLoop::DeferOrRunPendingTask(base::PendingTask) base/message_loop/message_loop.cc:433:5 (content_browsertests+0x2d3203b)
    #12 base::MessageLoop::DoDelayedWork(base::TimeTicks*) base/message_loop/message_loop.cc:580:10 (content_browsertests+0x2d32800)
    #13 base::MessagePumpDefault::Run(base::MessagePump::Delegate*) base/message_loop/message_pump_default.cc:37:27 (content_browsertests+0x2d35ca4)
    #14 Run base/message_loop/message_loop.cc:369:10 (content_browsertests+0x2d313c7)
    #15 non-virtual thunk to base::MessageLoop::Run() base/message_loop/message_loop.cc (content_browsertests+0x2d313c7)
    #16 base::RunLoop::Run() base/run_loop.cc:111:14 (content_browsertests+0x2d62a8b)
    #17 base::Thread::Run(base::RunLoop*) base/threading/thread.cc:255:13 (content_browsertests+0x2d9bc89)
    #18 base::Thread::ThreadMain() base/threading/thread.cc:338:3 (content_browsertests+0x2d9bf4e)
    #19 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:71:13 (content_browsertests+0x2d92c9d)
  Thread T19 'AudioThread' (tid=17749, running) created by main thread at:
    #0 pthread_create <null> (content_browsertests+0x4cd623)
    #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+0x2d92827)
    #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:193:10 (content_browsertests+0x2d92725)
    #3 base::Thread::StartWithOptions(base::Thread::Options const&) base/threading/thread.cc:112:15 (content_browsertests+0x2d9b7b8)
    #4 base::Thread::Start() base/threading/thread.cc:75:10 (content_browsertests+0x2d9b5db)
    #5 media::AudioThreadImpl::AudioThreadImpl() media/audio/audio_thread_impl.cc:15:3 (content_browsertests+0xec50bf)
    #6 MakeUnique<media::AudioThreadImpl> base/memory/ptr_util.h:56:33 (content_browsertests+0x1fb533a)
    #7 content::BrowserMainLoop::CreateAudioManager() content/browser/browser_main_loop.cc:1775 (content_browsertests+0x1fb533a)
    #8 content::BrowserMainLoop::BrowserThreadsStarted() content/browser/browser_main_loop.cc:1486:5 (content_browsertests+0x1fb20de)
    #9 Invoke<content::BrowserMainLoop *> base/bind_internal.h:209:12 (content_browsertests+0x1fb6015)
    #10 MakeItSo<int (content::BrowserMainLoop::*const &)(), content::BrowserMainLoop *> base/bind_internal.h:275 (content_browsertests+0x1fb6015)
    #11 RunImpl<int (content::BrowserMainLoop::*const &)(), const std::__1::tuple<base::internal::UnretainedWrapper<content::BrowserMainLoop> > &, 0> base/bind_internal.h:351 (content_browsertests+0x1fb6015)
    #12 base::internal::Invoker<base::internal::BindState<int (content::BrowserMainLoop::*)(), base::internal::UnretainedWrapper<content::BrowserMainLoop> >, int ()>::Run(base::internal::BindStateBase*) base/bind_internal.h:329 (content_browsertests+0x1fb6015)
    #13 Run base/callback.h:80:12 (content_browsertests+0x24fc0be)
    #14 content::StartupTaskRunner::RunAllTasksNow() content/browser/startup_task_runner.cc:45 (content_browsertests+0x24fc0be)
    #15 content::BrowserMainLoop::CreateStartupTasks() content/browser/browser_main_loop.cc:931:25 (content_browsertests+0x1fb0d32)
    #16 content::BrowserMainRunnerImpl::Initialize(content::MainFunctionParams const&) content/browser/browser_main_runner.cc:127:17 (content_browsertests+0x1fb689d)
    #17 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+0x288ea77)
    #18 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:313:16 (content_browsertests+0x2883a43)
    #19 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:398:35 (content_browsertests+0x1e82beb)
    #20 content::ContentMainRunnerImpl::Run() content/app/content_main_runner.cc:704:12 (content_browsertests+0x1e83a4e)
    #21 content::ContentServiceManagerMainDelegate::RunEmbedderProcess() content/app/content_service_manager_main_delegate.cc:41:32 (content_browsertests+0x10da83f)
    #22 service_manager::Main(service_manager::MainParams const&) services/service_manager/embedder/main.cc:469:29 (content_browsertests+0x437735b)
    #23 content::ContentMain(content::ContentMainParams const&) content/app/content_main.cc:19:10 (content_browsertests+0x10dafcb)
    #24 content::BrowserTestBase::SetUp() content/public/test/browser_test_base.cc:270:3 (content_browsertests+0x281e271)
    #25 content::ContentBrowserTest::SetUp() content/public/test/content_browser_test.cc:89:20 (content_browsertests+0x280f636)
    #26 content::WebRtcContentBrowserTestBase::SetUp() content/browser/webrtc/webrtc_content_browsertest_base.cc:47:23 (content_browsertests+0xb5e541)
    #27 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc:2455:12 (content_browsertests+0x27e3e66)
    #28 testing::Test::Run() third_party/googletest/src/googletest/src/gtest.cc:2467 (content_browsertests+0x27e3e66)
    #29 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2653:11 (content_browsertests+0x27e4cdd)
    #30 testing::TestCase::Run() third_party/googletest/src/googletest/src/gtest.cc:2771:28 (content_browsertests+0x27e5516)
    #31 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:4648:43 (content_browsertests+0x27ee416)
    #32 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc:2455:12 (content_browsertests+0x27ede14)
    #33 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4256 (content_browsertests+0x27ede14)
    #34 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2237:46 (content_browsertests+0x2856e65)
    #35 base::TestSuite::Run() base/test/test_suite.cc:271 (content_browsertests+0x2856e65)
    #36 content::ContentTestLauncherDelegate::RunTestSuite(int, char**) content/test/content_test_launcher.cc:105:48 (content_browsertests+0x281486b)
    #37 content::LaunchTests(content::TestLauncherDelegate*, int, int, char**) content/public/test/test_launcher.cc:520:31 (content_browsertests+0x283f95d)
    #38 main content/test/content_test_launcher.cc:131:10 (content_browsertests+0x28147f2)
  Thread T17 'Chrome_IOThread' (tid=17747, running) created by main thread at:
    #0 pthread_create <null> (content_browsertests+0x4cd623)
    #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+0x2d92827)
    #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:193:10 (content_browsertests+0x2d92725)
    #3 base::Thread::StartWithOptions(base::Thread::Options const&) base/threading/thread.cc:112:15 (content_browsertests+0x2d9b7b8)
    #4 content::BrowserThreadImpl::StartWithOptions(base::Thread::Options const&) content/browser/browser_thread_impl.cc:404:25 (content_browsertests+0x1fc4cba)
    #5 content::BrowserMainLoop::CreateThreads() content/browser/browser_main_loop.cc:1083:49 (content_browsertests+0x1fb18d7)
    #6 Invoke<content::BrowserMainLoop *> base/bind_internal.h:209:12 (content_browsertests+0x1fb6015)
    #7 MakeItSo<int (content::BrowserMainLoop::*const &)(), content::BrowserMainLoop *> base/bind_internal.h:275 (content_browsertests+0x1fb6015)
    #8 RunImpl<int (content::BrowserMainLoop::*const &)(), const std::__1::tuple<base::internal::UnretainedWrapper<content::BrowserMainLoop> > &, 0> base/bind_internal.h:351 (content_browsertests+0x1fb6015)
    #9 base::internal::Invoker<base::internal::BindState<int (content::BrowserMainLoop::*)(), base::internal::UnretainedWrapper<content::BrowserMainLoop> >, int ()>::Run(base::internal::BindStateBase*) base/bind_internal.h:329 (content_browsertests+0x1fb6015)
    #10 Run base/callback.h:80:12 (content_browsertests+0x24fc0be)
    #11 content::StartupTaskRunner::RunAllTasksNow() content/browser/startup_task_runner.cc:45 (content_browsertests+0x24fc0be)
    #12 content::BrowserMainLoop::CreateStartupTasks() content/browser/browser_main_loop.cc:931:25 (content_browsertests+0x1fb0d32)
    #13 content::BrowserMainRunnerImpl::Initialize(content::MainFunctionParams const&) content/browser/browser_main_runner.cc:127:17 (content_browsertests+0x1fb689d)
    #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+0x288ea77)
    #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:313:16 (content_browsertests+0x2883a43)
    #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:398:35 (content_browsertests+0x1e82beb)
    #17 content::ContentMainRunnerImpl::Run() content/app/content_main_runner.cc:704:12 (content_browsertests+0x1e83a4e)
    #18 content::ContentServiceManagerMainDelegate::RunEmbedderProcess() content/app/content_service_manager_main_delegate.cc:41:32 (content_browsertests+0x10da83f)
    #19 service_manager::Main(service_manager::MainParams const&) services/service_manager/embedder/main.cc:469:29 (content_browsertests+0x437735b)
    #20 content::ContentMain(content::ContentMainParams const&) content/app/content_main.cc:19:10 (content_browsertests+0x10dafcb)
    #21 content::BrowserTestBase::SetUp() content/public/test/browser_test_base.cc:270:3 (content_browsertests+0x281e271)
    #22 content::ContentBrowserTest::SetUp() content/public/test/content_browser_test.cc:89:20 (content_browsertests+0x280f636)
    #23 content::WebRtcContentBrowserTestBase::SetUp() content/browser/webrtc/webrtc_content_browsertest_base.cc:47:23 (content_browsertests+0xb5e541)
    #24 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc:2455:12 (content_browsertests+0x27e3e66)
    #25 testing::Test::Run() third_party/googletest/src/googletest/src/gtest.cc:2467 (content_browsertests+0x27e3e66)
    #26 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2653:11 (content_browsertests+0x27e4cdd)
    #27 testing::TestCase::Run() third_party/googletest/src/googletest/src/gtest.cc:2771:28 (content_browsertests+0x27e5516)
    #28 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:4648:43 (content_browsertests+0x27ee416)
    #29 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc:2455:12 (content_browsertests+0x27ede14)
    #30 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4256 (content_browsertests+0x27ede14)
    #31 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2237:46 (content_browsertests+0x2856e65)
    #32 base::TestSuite::Run() base/test/test_suite.cc:271 (content_browsertests+0x2856e65)
    #33 content::ContentTestLauncherDelegate::RunTestSuite(int, char**) content/test/content_test_launcher.cc:105:48 (content_browsertests+0x281486b)
    #34 content::LaunchTests(content::TestLauncherDelegate*, int, int, char**) content/public/test/test_launcher.cc:520:31 (content_browsertests+0x283f95d)
    #35 main content/test/content_test_launcher.cc:131:10 (content_browsertests+0x28147f2)
SUMMARY: ThreadSanitizer: data race base/timer/timer.cc:40:10 in base::BaseTimerTaskInternal::Run()
Labels: Stability-ThreadSanitizer
Labels: Sheriff-Chromium
Another failure appeared in WebRtcMediaRecorderTest.Resume, probably related.
https://build.chromium.org/p/chromium.memory/builders/Linux%20TSan%20Tests/builds/7842
Owner: ossu@chromium.org
Status: Assigned (was: Available)
Suspecting https://codereview.chromium.org/2919793002 since the data race referenced in tsan seems to match the code that was added in the patch. ossu@ can you PTAL?
Labels: -Sheriff-Chromium

Comment 9 by ossu@chromium.org, Jun 26 2017

Sure! Looks like it's related to the destruction of the timer - a problem that I had for a while but that mysteriously disappeared.

Comment 10 by ossu@chromium.org, Jun 26 2017

Status: Started (was: Assigned)
Project Member

Comment 11 by bugdroid1@chromium.org, Jun 26 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8f0d1b197b91fd95b457d8ecce3d6844ede13bcb

commit 8f0d1b197b91fd95b457d8ecce3d6844ede13bcb
Author: Xida Chen <xidachen@chromium.org>
Date: Mon Jun 26 13:10:20 2017

Disable flaky test WebRtcMediaRecorderTest.IllegalRequestDataThrowsDOMError on Tsan

TBR=msramek@chromium.org
NOTRY=true

Bug: 736268
Change-Id: I09b88fc31f897a8b44a0ee920cd9d4ea58547a37
Reviewed-on: https://chromium-review.googlesource.com/548655
Reviewed-by: Xida Chen <xidachen@chromium.org>
Commit-Queue: Xida Chen <xidachen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#482253}
[modify] https://crrev.com/8f0d1b197b91fd95b457d8ecce3d6844ede13bcb/content/browser/webrtc/webrtc_media_recorder_browsertest.cc

...and WebRtcMediaRecorderTest.IllegalPauseThrowsDOMError flaked right in the next. I'll disable that too.

https://build.chromium.org/p/chromium.memory/builders/Linux%20TSan%20Tests/builds/7950
https://build.chromium.org/p/chromium.memory/builders/Linux%20TSan%20Tests/builds/7951

Project Member

Comment 13 by bugdroid1@chromium.org, Jun 26 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/32cc6efa4149f3dac7f4853ec2a698ae24a8a53f

commit 32cc6efa4149f3dac7f4853ec2a698ae24a8a53f
Author: msramek <msramek@chromium.org>
Date: Mon Jun 26 13:50:49 2017

Disable WebRtcMediaRecorderTest.IllegalPauseThrowsDOMError on TSan

...since it's flaky.

This is a followup to https://chromium-review.googlesource.com/548655
which disabled WebRtcMediaRecorderTest.IllegalRequestDataThrowsDOMError
from the same test suite.

NOTRY=True
TBR=xidachen@chromium.org
BUG=736268

Review-Url: https://codereview.chromium.org/2958763002
Cr-Commit-Position: refs/heads/master@{#482258}

[modify] https://crrev.com/32cc6efa4149f3dac7f4853ec2a698ae24a8a53f/content/browser/webrtc/webrtc_media_recorder_browsertest.cc

Project Member

Comment 14 by bugdroid1@chromium.org, Jun 26 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0e6ebd8cb8537d536bdb6c8f74bf3ae8b7822bff

commit 0e6ebd8cb8537d536bdb6c8f74bf3ae8b7822bff
Author: Xida Chen <xidachen@chromium.org>
Date: Mon Jun 26 13:56:49 2017

Disable WebRtcMediaRecorderTest.AddingTrackToMediaStreamFiresErrorEvent on Tsan

Bug: 736268
TBR=msramek@chromium.org
NOTRY=true

Change-Id: I24f29a4a9c279b7a8a15af3d4e394fc440da70b0
Reviewed-on: https://chromium-review.googlesource.com/548815
Reviewed-by: Xida Chen <xidachen@chromium.org>
Commit-Queue: Xida Chen <xidachen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#482259}
[modify] https://crrev.com/0e6ebd8cb8537d536bdb6c8f74bf3ae8b7822bff/content/browser/webrtc/webrtc_media_recorder_browsertest.cc

Comment 15 by ossu@chromium.org, Jun 26 2017

I've got a cl on the way here: https://codereview.chromium.org/2954323002 which will resolve these flakes, so you may want to hold off on disabling all the tests hit by it.
Project Member

Comment 16 by bugdroid1@chromium.org, Jun 26 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1e35e70329d1d253dabeab38c4e772be5674c3b7

commit 1e35e70329d1d253dabeab38c4e772be5674c3b7
Author: Xida Chen <xidachen@chromium.org>
Date: Mon Jun 26 16:37:21 2017

Disable flaky test WebRtcMediaRecorderTest.IllegalStartWhilePausedThrowsDOMError on TSAN

TBR=imcheng@chromium.org
NOTRY=true

Bug: 736268
Change-Id: I6abc58c3ad3fff9b03929e6d4cf45aff6573ce39
Reviewed-on: https://chromium-review.googlesource.com/548915
Reviewed-by: Xida Chen <xidachen@chromium.org>
Commit-Queue: Xida Chen <xidachen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#482290}
[modify] https://crrev.com/1e35e70329d1d253dabeab38c4e772be5674c3b7/content/browser/webrtc/webrtc_media_recorder_browsertest.cc

Project Member

Comment 17 by bugdroid1@chromium.org, Jun 30 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8e7f9967cab8bb7eba9af7f29d63c69dff2c72b5

commit 8e7f9967cab8bb7eba9af7f29d63c69dff2c72b5
Author: timloh <timloh@chromium.org>
Date: Fri Jun 30 04:54:21 2017

Disable flaky WebRtcMediaRecorderTest tests on TSAN

Disable the following flaky WebRtcMediaRecorderTest tests on TSAN:
  StartAndDataAvailable
  IllegalStopThrowsDOMError
  IllegalStartWhileRecordingThrowsDOMError

TBR=ossu
BUG=736268

Review-Url: https://codereview.chromium.org/2969613002
Cr-Commit-Position: refs/heads/master@{#483633}

[modify] https://crrev.com/8e7f9967cab8bb7eba9af7f29d63c69dff2c72b5/content/browser/webrtc/webrtc_media_recorder_browsertest.cc

For the future, please prefer to revert tests that introduce flaky tests, rather than disabling tests or waiting on a fix. Even for a patch a couple days old, reverting should be preferred.
There's a whole lot of related failures in content_browsertests, e.g.:

https://chromium-swarm.appspot.com/task?id=372b0a8d69532a10&refresh=10&show_raw=1
Blockedon: 684640
Cc: gab@chromium.org
This clearly has something to do with the Abandon() implementation, which is currently thread-unsafe.

Comment 21 by ossu@chromium.org, Jul 5 2017

Yep. I think we've found a way forward in https://codereview.chromium.org/2958003002/ - making it possible to explicitly Abandon the scheduled task on the correct thread, so that destruction becomes safe.
Cc: ossu@chromium.org
 Issue 739338  has been merged into this issue.
Project Member

Comment 23 by bugdroid1@chromium.org, Jul 6 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/87340af883f06c363febe752245c1ab1a926a234

commit 87340af883f06c363febe752245c1ab1a926a234
Author: ossu <ossu@chromium.org>
Date: Thu Jul 06 09:02:15 2017

Expose Timer::AbandonAndStop, so it can safely be destroyed on another thread.

BUG=chromium:736268
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel

Review-Url: https://codereview.chromium.org/2958003002
Cr-Commit-Position: refs/heads/master@{#484507}

[modify] https://crrev.com/87340af883f06c363febe752245c1ab1a926a234/base/timer/timer.h
[modify] https://crrev.com/87340af883f06c363febe752245c1ab1a926a234/media/audio/audio_input_controller.cc

Comment 24 by ossu@chromium.org, Jul 7 2017

Labels: Sheriff-Chromium
Adding the Sheriff-Chromium label again. The problem should be fixed with the commit in comment #23. I can revert the previous CLs disabling the tests, but would like to check in with the current sheriff first, in case things start flaking again.
SG, please go ahead.

Comment 26 by ossu@chromium.org, Jul 7 2017

Great! Turns out it's not letting me, since I'm not a full committer. Created two reverts here:
https://codereview.chromium.org/2974643002/
and here:
https://chromium-review.googlesource.com/c/563317

Probably easiest if you do the other ones yourself. :/
Sorry, I somehow missed the last update 2 hours ago. It'd be best to talk to avi@ who is in a more appropriate timezone now.
ossu@: I LGTM'ed your reverts. They can land now.

Comment 29 by ossu@chromium.org, Jul 7 2017

Ah, alright. I also have to leave pretty soon. If the sheriff on duty finds the time, it should be fine to revert the disabling of the tests done in this bug. Otherwise, I'll collect those changes in a CL after the weekend and put it up for review.

Comment 30 by ossu@chromium.org, Jul 7 2017

Just saw comment 28. Thanks, guidou@! I'll land those two and if they don't start flaking again over the weekend, I'll start on the other ones as well!
Project Member

Comment 31 by bugdroid1@chromium.org, Jul 7 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8e815c50065bc0b2f28345bf705b9d4543d87850

commit 8e815c50065bc0b2f28345bf705b9d4543d87850
Author: Oskar Sundbom <ossu@chromium.org>
Date: Fri Jul 07 15:29:46 2017

Revert "Disable flaky test WebRtcMediaRecorderTest.IllegalStartWhilePausedThrowsDOMError on TSAN"

This reverts commit 1e35e70329d1d253dabeab38c4e772be5674c3b7.

Reason for revert: The underlying problem should now be solved.

Original change's description:
> Disable flaky test WebRtcMediaRecorderTest.IllegalStartWhilePausedThrowsDOMError on TSAN
> 
> TBR=imcheng@chromium.org
> NOTRY=true
> 
> Bug: 736268
> Change-Id: I6abc58c3ad3fff9b03929e6d4cf45aff6573ce39
> Reviewed-on: https://chromium-review.googlesource.com/548915
> Reviewed-by: Xida Chen <xidachen@chromium.org>
> Commit-Queue: Xida Chen <xidachen@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#482290}

TBR=imcheng@chromium.org,xidachen@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: 736268
Change-Id: I23910a3333d44e32167f16c797d9499d43e157cb
Reviewed-on: https://chromium-review.googlesource.com/563317
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
Commit-Queue: Oskar Sundbom <ossu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#484933}
[modify] https://crrev.com/8e815c50065bc0b2f28345bf705b9d4543d87850/content/browser/webrtc/webrtc_media_recorder_browsertest.cc

Project Member

Comment 32 by bugdroid1@chromium.org, Jul 7 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9d93c4adcaf03b9dadc1ac11ed9d29332efebf8a

commit 9d93c4adcaf03b9dadc1ac11ed9d29332efebf8a
Author: ossu <ossu@chromium.org>
Date: Fri Jul 07 15:33:31 2017

Revert of Disable flaky WebRtcMediaRecorderTest tests on TSAN (patchset #1 id:1 of https://codereview.chromium.org/2969613002/ )

Reason for revert:
The underlying problem should now be solved.

Original issue's description:
> Disable flaky WebRtcMediaRecorderTest tests on TSAN
>
> Disable the following flaky WebRtcMediaRecorderTest tests on TSAN:
>   StartAndDataAvailable
>   IllegalStopThrowsDOMError
>   IllegalStartWhileRecordingThrowsDOMError
>
> TBR=ossu
> BUG=736268
>
> Review-Url: https://codereview.chromium.org/2969613002
> Cr-Commit-Position: refs/heads/master@{#483633}
> Committed: https://chromium.googlesource.com/chromium/src/+/8e7f9967cab8bb7eba9af7f29d63c69dff2c72b5

TBR=timloh@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=736268

Review-Url: https://codereview.chromium.org/2974643002
Cr-Commit-Position: refs/heads/master@{#484936}

[modify] https://crrev.com/9d93c4adcaf03b9dadc1ac11ed9d29332efebf8a/content/browser/webrtc/webrtc_media_recorder_browsertest.cc

Labels: -Sheriff-Chromium

Sign in to add a comment