New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 667741 link

Starred by 1 user

Issue metadata

Status: Duplicate
Merged: issue 638862
Owner:
Closed: Feb 2017
Cc:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 3
Type: Bug



Sign in to add a comment

Data race in gpu::CommandBufferProxyImpl::OrderingBarrier(int)

Project Member Reported by glider@chromium.org, Nov 22 2016

Issue description

See full TSan log at https://build.chromium.org/p/chromium.memory.full/builders/Linux%20TSan%20Tests/builds/3797/steps/content_browsertests%20on%20Ubuntu-12.04/logs/stdio:

[ RUN      ] SingleProcessMemoryTracingTest.QueuedDumps
[2748:2748:1122/033733:39142799972:WARNING:audio_manager.cc(317)] Multiple instances of AudioManager detected
[2748:2748:1122/033733:39142800172:WARNING:audio_manager.cc(278)] Multiple instances of AudioManager detected
Xlib:  extension "RANDR" missing on display ":9".
[2748:2804:1122/033733:39142970566:WARNING:histograms.cc(40)] Started multiple compositor clients (Browser, Renderer) in one process. Some metrics will be disabled.
==================
WARNING: ThreadSanitizer: data race (pid=2748)
  Read of size 4 at 0x7b5800006068 by thread T15 (mutexes: write M726622464058090128):
    #0 gpu::CommandBufferProxyImpl::OrderingBarrier(int) gpu/ipc/client/command_buffer_proxy_impl.cc:286:19 (content_browsertests+0x000000cd1dcb)
    #1 gpu::CommandBufferHelper::OrderingBarrier() gpu/command_buffer/client/cmd_buffer_helper.cc:192:22 (content_browsertests+0x000000cac674)
    #2 gpu::gles2::GLES2Implementation::OrderingBarrierCHROMIUM() gpu/command_buffer/client/gles2_implementation.cc:1399:33 (content_browsertests+0x0000039fce43)
    #3 cc::OneCopyRasterBufferProvider::CopyOnWorkerThread(cc::StagingBuffer*, cc::ResourceProvider::ScopedWriteLockGL*, gpu::SyncToken const&, cc::RasterSource const*, unsigned long, unsigned long) cc/raster/one_copy_raster_buffer_provider.cc:376:7 (content_browsertests+0x0000039a44a8)
    #4 cc::OneCopyRasterBufferProvider::PlaybackAndCopyOnWorkerThread(cc::Resource const*, cc::ResourceProvider::ScopedWriteLockGL*, gpu::SyncToken const&, cc::RasterSource const*, gfx::Rect const&, gfx::Rect const&, gfx::SizeF const&, cc::RasterSource::PlaybackSettings const&, unsigned long, unsigned long) cc/raster/one_copy_raster_buffer_provider.cc:200:3 (content_browsertests+0x0000039a3394)
    #5 cc::OneCopyRasterBufferProvider::RasterBufferImpl::Playback(cc::RasterSource const*, gfx::Rect const&, gfx::Rect const&, unsigned long, gfx::SizeF const&, cc::RasterSource::PlaybackSettings const&) cc/raster/one_copy_raster_buffer_provider.cc:61:12 (content_browsertests+0x0000039a30f4)
    #6 cc::(anonymous namespace)::RasterTaskImpl::RunOnWorkerThread() cc/tiles/tile_manager.cc:129:21 (content_browsertests+0x0000038f04d0)
    #7 cc::SingleThreadTaskGraphRunner::RunTaskWithLockAcquired() cc/raster/single_thread_task_graph_runner.cc:154:28 (content_browsertests+0x0000038c4bd3)
    #8 Run cc/raster/single_thread_task_graph_runner.cc:117:10 (content_browsertests+0x0000038c4e3f)
    #9 non-virtual thunk to cc::SingleThreadTaskGraphRunner::Run() cc/raster/single_thread_task_graph_runner.cc:113 (content_browsertests+0x0000038c4e3f)
    #10 base::DelegateSimpleThread::Run() base/threading/simple_thread.cc:92:13 (content_browsertests+0x0000029690d8)
    #11 base::SimpleThread::ThreadMain() base/threading/simple_thread.cc:68:3 (content_browsertests+0x000002968e52)
    #12 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:71:13 (content_browsertests+0x00000296316d)

  Previous write of size 8 at 0x7b5800006068 by main thread:
    #0 memcpy <null> (content_browsertests+0x0000004bc4fd)
    #1 Read gpu/command_buffer/common/command_buffer_shared.h:55:14 (content_browsertests+0x000000cd16e9)
    #2 TryUpdateState gpu/ipc/client/command_buffer_proxy_impl.cc:726 (content_browsertests+0x000000cd16e9)
    #3 gpu::CommandBufferProxyImpl::GetLastToken() gpu/ipc/client/command_buffer_proxy_impl.cc:247 (content_browsertests+0x000000cd16e9)
    #4 last_token_read gpu/command_buffer/client/cmd_buffer_helper.h:182:61 (content_browsertests+0x000000cb0f65)
    #5 gpu::RingBuffer::GetLargestFreeSizeNoWaiting() gpu/command_buffer/client/ring_buffer.cc:149 (content_browsertests+0x000000cb0f65)
    #6 gpu::RingBuffer::GetTotalFreeSizeNoWaiting() gpu/command_buffer/client/ring_buffer.cc:174:36 (content_browsertests+0x000000cb16ee)
    #7 gpu::TransferBuffer::GetFreeSize() const gpu/command_buffer/client/transfer_buffer.cc:96:39 (content_browsertests+0x000000cb37bc)
    #8 gpu::gles2::GLES2Implementation::OnMemoryDump(base::trace_event::MemoryDumpArgs const&, base::trace_event::ProcessMemoryDump*) gpu/command_buffer/client/gles2_implementation.cc:459:39 (content_browsertests+0x0000039f8d7a)
    #9 non-virtual thunk to gpu::gles2::GLES2Implementation::OnMemoryDump(base::trace_event::MemoryDumpArgs const&, base::trace_event::ProcessMemoryDump*) gpu/command_buffer/client/gles2_implementation.cc:438:27 (content_browsertests+0x0000039f8e2d)
    #10 base::trace_event::MemoryDumpManager::InvokeOnMemoryDump(base::trace_event::MemoryDumpManager::ProcessMemoryDumpAsyncState*) base/trace_event/memory_dump_manager.cc:595:52 (content_browsertests+0x00000297582d)
    #11 base::trace_event::MemoryDumpManager::SetupNextMemoryDump(std::__1::unique_ptr<base::trace_event::MemoryDumpManager::ProcessMemoryDumpAsyncState, std::__1::default_delete<base::trace_event::MemoryDumpManager::ProcessMemoryDumpAsyncState> >) base/trace_event/memory_dump_manager.cc:506:12 (content_browsertests+0x00000297499f)
    #12 base::trace_event::MemoryDumpManager::InvokeOnMemoryDump(base::trace_event::MemoryDumpManager::ProcessMemoryDumpAsyncState*) base/trace_event/memory_dump_manager.cc:601:3 (content_browsertests+0x000002975717)
    #13 Invoke<base::trace_event::MemoryDumpManager *, base::trace_event::MemoryDumpManager::ProcessMemoryDumpAsyncState *> base/bind_internal.h:214:12 (content_browsertests+0x000002977d66)
    #14 MakeItSo<void (base::trace_event::MemoryDumpManager::*const &)(base::trace_event::MemoryDumpManager::ProcessMemoryDumpAsyncState *), base::trace_event::MemoryDumpManager *, base::trace_event::MemoryDumpManager::ProcessMemoryDumpAsyncState *> base/bind_internal.h:285 (content_browsertests+0x000002977d66)
    #15 RunImpl<void (base::trace_event::MemoryDumpManager::*const &)(base::trace_event::MemoryDumpManager::ProcessMemoryDumpAsyncState *), const std::__1::tuple<base::internal::UnretainedWrapper<base::trace_event::MemoryDumpManager>, base::internal::UnretainedWrapper<base::trace_event::MemoryDumpManager::ProcessMemoryDumpAsyncState> > &, 0, 1> base/bind_internal.h:361 (content_browsertests+0x000002977d66)
    #16 base::internal::Invoker<base::internal::BindState<void (base::trace_event::MemoryDumpManager::*)(base::trace_event::MemoryDumpManager::ProcessMemoryDumpAsyncState*), base::internal::UnretainedWrapper<base::trace_event::MemoryDumpManager>, base::internal::UnretainedWrapper<base::trace_event::MemoryDumpManager::ProcessMemoryDumpAsyncState> >, void ()>::Run(base::internal::BindStateBase*) base/bind_internal.h:339 (content_browsertests+0x000002977d66)
    #17 Run base/callback.h:68:12 (content_browsertests+0x0000029ac325)
    #18 base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/debug/task_annotator.cc:52 (content_browsertests+0x0000029ac325)
    #19 base::MessageLoop::RunTask(base::PendingTask*) base/message_loop/message_loop.cc:413:19 (content_browsertests+0x000002911d79)
    #20 base::MessageLoop::DeferOrRunPendingTask(base::PendingTask) base/message_loop/message_loop.cc:422:5 (content_browsertests+0x00000291227d)
    #21 base::MessageLoop::DoWork() base/message_loop/message_loop.cc:515:13 (content_browsertests+0x000002912994)
    #22 base::MessagePumpGlib::Run(base::MessagePump::Delegate*) base/message_loop/message_pump_glib.cc:313:49 (content_browsertests+0x000002916eab)
    #23 base::MessageLoop::RunHandler() base/message_loop/message_loop.cc:378:10 (content_browsertests+0x00000291195b)
    #24 base::RunLoop::Run() base/run_loop.cc:35:10 (content_browsertests+0x00000293ca09)
    #25 RequestGlobalDumpAndWait content/browser/tracing/memory_tracing_browsertest.cc:144:14 (content_browsertests+0x00000093464c)
    #26 content::SingleProcessMemoryTracingTest_QueuedDumps_Test::RunTestOnMainThread() content/browser/tracing/memory_tracing_browsertest.cc:290 (content_browsertests+0x00000093464c)
    #27 content::ContentBrowserTest::RunTestOnMainThreadLoop() content/public/test/content_browser_test.cc:138:3 (content_browsertests+0x000002471a28)
    #28 content::BrowserTestBase::ProxyRunTestOnMainThreadLoop() content/public/test/browser_test_base.cc:344:3 (content_browsertests+0x000002478025)
    #29 Invoke<content::BrowserTestBase *> base/bind_internal.h:214:12 (content_browsertests+0x000002478b75)
    #30 MakeItSo<void (content::BrowserTestBase::*const &)(), content::BrowserTestBase *> base/bind_internal.h:285 (content_browsertests+0x000002478b75)
    #31 RunImpl<void (content::BrowserTestBase::*const &)(), const std::__1::tuple<base::internal::UnretainedWrapper<content::BrowserTestBase> > &, 0> base/bind_internal.h:361 (content_browsertests+0x000002478b75)
    #32 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+0x000002478b75)
    #33 Run base/callback.h:85:12 (content_browsertests+0x0000024fa0ff)
    #34 content::ShellBrowserMainParts::PreMainMessageLoopRun() content/shell/browser/shell_browser_main_parts.cc:191 (content_browsertests+0x0000024fa0ff)
    #35 content::BrowserMainLoop::PreMainMessageLoopRun() content/browser/browser_main_loop.cc:974:13 (content_browsertests+0x000001e13e19)
    #36 Invoke<content::BrowserMainLoop *> base/bind_internal.h:214:12 (content_browsertests+0x000001e17235)
    #37 MakeItSo<int (content::BrowserMainLoop::*const &)(), content::BrowserMainLoop *> base/bind_internal.h:285 (content_browsertests+0x000001e17235)
    #38 RunImpl<int (content::BrowserMainLoop::*const &)(), const std::__1::tuple<base::internal::UnretainedWrapper<content::BrowserMainLoop> > &, 0> base/bind_internal.h:361 (content_browsertests+0x000001e17235)
    #39 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+0x000001e17235)
    #40 Run base/callback.h:85:12 (content_browsertests+0x00000229f72a)
    #41 content::StartupTaskRunner::RunAllTasksNow() content/browser/startup_task_runner.cc:45 (content_browsertests+0x00000229f72a)
    #42 content::BrowserMainLoop::CreateStartupTasks() content/browser/browser_main_loop.cc:864:25 (content_browsertests+0x000001e11d68)
    #43 content::BrowserMainRunnerImpl::Initialize(content::MainFunctionParams const&) content/browser/browser_main_runner.cc:126:17 (content_browsertests+0x000001e17bc2)
    #44 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+0x0000024d5167)
    #45 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:294:16 (content_browsertests+0x0000024c8463)
    #46 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:396:35 (content_browsertests+0x000001d210fb)
    #47 content::ContentMainRunnerImpl::Run() content/app/content_main_runner.cc:775:12 (content_browsertests+0x000001d21dd7)
    #48 content::ContentMain(content::ContentMainParams const&) content/app/content_main.cc:20:28 (content_browsertests+0x000001d190ce)
    #49 content::BrowserTestBase::SetUp() content/public/test/browser_test_base.cc:316:3 (content_browsertests+0x000002477cbb)
    #50 content::ContentBrowserTest::SetUp() content/public/test/content_browser_test.cc:94:20 (content_browsertests+0x0000024718a6)
    #51 content::MemoryTracingTest::SetUp() content/browser/tracing/memory_tracing_browsertest.cc:102:25 (content_browsertests+0x00000093515e)
    #52 HandleExceptionsInMethodIfSupported<testing::Test, void> testing/gtest/src/gtest.cc:2458:12 (content_browsertests+0x00000268ec6d)
    #53 testing::Test::Run() testing/gtest/src/gtest.cc:2470 (content_browsertests+0x00000268ec6d)
    #54 testing::TestInfo::Run() testing/gtest/src/gtest.cc:2656:11 (content_browsertests+0x00000268fdfd)
    #55 testing::TestCase::Run() testing/gtest/src/gtest.cc:2774:28 (content_browsertests+0x0000026906d6)
    #56 testing::internal::UnitTestImpl::RunAllTests() testing/gtest/src/gtest.cc:4647:43 (content_browsertests+0x000002699bb6)
    #57 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> testing/gtest/src/gtest.cc:2458:12 (content_browsertests+0x000002699559)
    #58 testing::UnitTest::Run() testing/gtest/src/gtest.cc:4255 (content_browsertests+0x000002699559)
    #59 RUN_ALL_TESTS testing/gtest/include/gtest/gtest.h:2237:46 (content_browsertests+0x0000024a4599)
    #60 base::TestSuite::Run() base/test/test_suite.cc:271 (content_browsertests+0x0000024a4599)
    #61 content::ContentTestLauncherDelegate::RunTestSuite(int, char**) content/test/content_test_launcher.cc:105:48 (content_browsertests+0x000002476f7b)
    #62 content::LaunchTests(content::TestLauncherDelegate*, int, int, char**) content/public/test/test_launcher.cc:520:31 (content_browsertests+0x000002491994)
    #63 main content/test/content_test_launcher.cc:131:10 (content_browsertests+0x000002476f02)

  Location is heap block of size 752 at 0x7b5800006000 allocated by main thread:
    #0 operator new(unsigned long) <null> (content_browsertests+0x000000511602)
    #1 gpu::CommandBufferProxyImpl::Create(scoped_refptr<gpu::GpuChannelHost>, unsigned long, gpu::CommandBufferProxyImpl*, int, gpu::GpuStreamPriority, gpu::gles2::ContextCreationAttribHelper const&, GURL const&, scoped_refptr<base::SingleThreadTaskRunner>) gpu/ipc/client/command_buffer_proxy_impl.cc:94:7 (content_browsertests+0x000000ccef8f)
    #2 content::ContextProviderCommandBuffer::BindToCurrentThread() content/common/gpu/client/context_provider_command_buffer.cc:258:23 (content_browsertests+0x000000ae8fc5)
    #3 content::GpuProcessTransportFactory::EstablishedGpuChannel(base::WeakPtr<ui::Compositor>, bool, int, scoped_refptr<gpu::GpuChannelHost>) content/browser/compositor/gpu_process_transport_factory.cc:383:47 (content_browsertests+0x0000023780ef)
    #4 void base::internal::FunctorTraits<void (content::GpuProcessTransportFactory::*)(base::WeakPtr<ui::Compositor>, bool, int, scoped_refptr<gpu::GpuChannelHost>), void>::Invoke<base::WeakPtr<content::GpuProcessTransportFactory> const&, base::WeakPtr<ui::Compositor> const&, bool const&, int const&, scoped_refptr<gpu::GpuChannelHost> >(void (content::GpuProcessTransportFactory::*)(base::WeakPtr<ui::Compositor>, bool, int, scoped_refptr<gpu::GpuChannelHost>), base::WeakPtr<content::GpuProcessTransportFactory> const&, base::WeakPtr<ui::Compositor> const&, bool const&, int const&, scoped_refptr<gpu::GpuChannelHost>&&) base/bind_internal.h:214:12 (content_browsertests+0x00000237bbe5)
    #5 MakeItSo<void (content::GpuProcessTransportFactory::*const &)(base::WeakPtr<ui::Compositor>, bool, int, scoped_refptr<gpu::GpuChannelHost>), const base::WeakPtr<content::GpuProcessTransportFactory> &, const base::WeakPtr<ui::Compositor> &, const bool &, const int &, scoped_refptr<gpu::GpuChannelHost> > base/bind_internal.h:305:5 (content_browsertests+0x00000237bae2)
    #6 RunImpl<void (content::GpuProcessTransportFactory::*const &)(base::WeakPtr<ui::Compositor>, bool, int, scoped_refptr<gpu::GpuChannelHost>), const std::__1::tuple<base::WeakPtr<content::GpuProcessTransportFactory>, base::WeakPtr<ui::Compositor>, bool, int> &, 0, 1, 2, 3> base/bind_internal.h:361 (content_browsertests+0x00000237bae2)
    #7 base::internal::Invoker<base::internal::BindState<void (content::GpuProcessTransportFactory::*)(base::WeakPtr<ui::Compositor>, bool, int, scoped_refptr<gpu::GpuChannelHost>), base::WeakPtr<content::GpuProcessTransportFactory>, base::WeakPtr<ui::Compositor>, bool, int>, void (scoped_refptr<gpu::GpuChannelHost>)>::Run(base::internal::BindStateBase*, scoped_refptr<gpu::GpuChannelHost>&&) base/bind_internal.h:339 (content_browsertests+0x00000237bae2)
    #8 Run base/callback.h:85:12 (content_browsertests+0x000001f980ee)
    #9 content::BrowserGpuChannelHostFactory::GpuChannelEstablished() content/browser/gpu/browser_gpu_channel_host_factory.cc:356 (content_browsertests+0x000001f980ee)
    #10 content::BrowserGpuChannelHostFactory::EstablishRequest::FinishOnMain() content/browser/gpu/browser_gpu_channel_host_factory.cc:171:14 (content_browsertests+0x000001f97dd2)
    #11 Invoke<const scoped_refptr<content::BrowserGpuChannelHostFactory::EstablishRequest> &> base/bind_internal.h:214:12 (content_browsertests+0x000001f99106)
    #12 MakeItSo<void (content::BrowserGpuChannelHostFactory::EstablishRequest::*const &)(), const scoped_refptr<content::BrowserGpuChannelHostFactory::EstablishRequest> &> base/bind_internal.h:285 (content_browsertests+0x000001f99106)
    #13 RunImpl<void (content::BrowserGpuChannelHostFactory::EstablishRequest::*const &)(), const std::__1::tuple<scoped_refptr<content::BrowserGpuChannelHostFactory::EstablishRequest> > &, 0> base/bind_internal.h:361 (content_browsertests+0x000001f99106)
    #14 base::internal::Invoker<base::internal::BindState<void (content::BrowserGpuChannelHostFactory::EstablishRequest::*)(), scoped_refptr<content::BrowserGpuChannelHostFactory::EstablishRequest> >, void ()>::Run(base::internal::BindStateBase*) base/bind_internal.h:339 (content_browsertests+0x000001f99106)
    #15 Run base/callback.h:68:12 (content_browsertests+0x0000029ac325)
    #16 base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/debug/task_annotator.cc:52 (content_browsertests+0x0000029ac325)
    #17 base::MessageLoop::RunTask(base::PendingTask*) base/message_loop/message_loop.cc:413:19 (content_browsertests+0x000002911d79)
    #18 base::MessageLoop::DeferOrRunPendingTask(base::PendingTask) base/message_loop/message_loop.cc:422:5 (content_browsertests+0x00000291227d)
    #19 base::MessageLoop::DoWork() base/message_loop/message_loop.cc:515:13 (content_browsertests+0x000002912994)
    #20 HandleDispatch base/message_loop/message_pump_glib.cc:267:25 (content_browsertests+0x000002917237)
    #21 base::(anonymous namespace)::WorkSourceDispatch(_GSource*, int (*)(void*), void*) base/message_loop/message_pump_glib.cc:109 (content_browsertests+0x000002917237)
    #22 g_main_dispatch /build/buildd/glib2.0-2.32.4/./glib/gmain.c:2539 (libglib-2.0.so.0+0x000000047d12)
    #23 g_main_context_dispatch /build/buildd/glib2.0-2.32.4/./glib/gmain.c:3075 (libglib-2.0.so.0+0x000000047d12)
    #24 base::MessageLoop::RunHandler() base/message_loop/message_loop.cc:378:10 (content_browsertests+0x00000291195b)
    #25 base::RunLoop::Run() base/run_loop.cc:35:10 (content_browsertests+0x00000293ca09)
    #26 content::RunThisRunLoop(base::RunLoop*) content/public/test/test_utils.cc:130:13 (content_browsertests+0x00000249559f)
    #27 content::MessageLoopRunner::Run() content/public/test/test_utils.cc:228:3 (content_browsertests+0x000002495df9)
    #28 content::TestNavigationObserver::Wait() content/public/test/test_navigation_observer.cc:115:25 (content_browsertests+0x000002494b99)
    #29 NavigateToURLBlockUntilNavigationsComplete content/public/test/content_browser_test_utils.cc:46:21 (content_browsertests+0x000002472278)
    #30 content::NavigateToURL(content::Shell*, GURL const&) content/public/test/content_browser_test_utils.cc:82 (content_browsertests+0x000002472278)
    #31 Navigate content/browser/tracing/memory_tracing_browsertest.cc:155:5 (content_browsertests+0x000000933814)
    #32 content::SingleProcessMemoryTracingTest_QueuedDumps_Test::RunTestOnMainThread() content/browser/tracing/memory_tracing_browsertest.cc:240 (content_browsertests+0x000000933814)
    #33 content::ContentBrowserTest::RunTestOnMainThreadLoop() content/public/test/content_browser_test.cc:138:3 (content_browsertests+0x000002471a28)
    #34 content::BrowserTestBase::ProxyRunTestOnMainThreadLoop() content/public/test/browser_test_base.cc:344:3 (content_browsertests+0x000002478025)
    #35 Invoke<content::BrowserTestBase *> base/bind_internal.h:214:12 (content_browsertests+0x000002478b75)
    #36 MakeItSo<void (content::BrowserTestBase::*const &)(), content::BrowserTestBase *> base/bind_internal.h:285 (content_browsertests+0x000002478b75)
    #37 RunImpl<void (content::BrowserTestBase::*const &)(), const std::__1::tuple<base::internal::UnretainedWrapper<content::BrowserTestBase> > &, 0> base/bind_internal.h:361 (content_browsertests+0x000002478b75)
    #38 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+0x000002478b75)
    #39 Run base/callback.h:85:12 (content_browsertests+0x0000024fa0ff)
    #40 content::ShellBrowserMainParts::PreMainMessageLoopRun() content/shell/browser/shell_browser_main_parts.cc:191 (content_browsertests+0x0000024fa0ff)
    #41 content::BrowserMainLoop::PreMainMessageLoopRun() content/browser/browser_main_loop.cc:974:13 (content_browsertests+0x000001e13e19)
    #42 Invoke<content::BrowserMainLoop *> base/bind_internal.h:214:12 (content_browsertests+0x000001e17235)
    #43 MakeItSo<int (content::BrowserMainLoop::*const &)(), content::BrowserMainLoop *> base/bind_internal.h:285 (content_browsertests+0x000001e17235)
    #44 RunImpl<int (content::BrowserMainLoop::*const &)(), const std::__1::tuple<base::internal::UnretainedWrapper<content::BrowserMainLoop> > &, 0> base/bind_internal.h:361 (content_browsertests+0x000001e17235)
    #45 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+0x000001e17235)
    #46 Run base/callback.h:85:12 (content_browsertests+0x00000229f72a)
    #47 content::StartupTaskRunner::RunAllTasksNow() content/browser/startup_task_runner.cc:45 (content_browsertests+0x00000229f72a)
    #48 content::BrowserMainLoop::CreateStartupTasks() content/browser/browser_main_loop.cc:864:25 (content_browsertests+0x000001e11d68)
    #49 content::BrowserMainRunnerImpl::Initialize(content::MainFunctionParams const&) content/browser/browser_main_runner.cc:126:17 (content_browsertests+0x000001e17bc2)
    #50 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+0x0000024d5167)
    #51 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:294:16 (content_browsertests+0x0000024c8463)
    #52 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:396:35 (content_browsertests+0x000001d210fb)
    #53 content::ContentMainRunnerImpl::Run() content/app/content_main_runner.cc:775:12 (content_browsertests+0x000001d21dd7)
    #54 content::ContentMain(content::ContentMainParams const&) content/app/content_main.cc:20:28 (content_browsertests+0x000001d190ce)
    #55 content::BrowserTestBase::SetUp() content/public/test/browser_test_base.cc:316:3 (content_browsertests+0x000002477cbb)
    #56 content::ContentBrowserTest::SetUp() content/public/test/content_browser_test.cc:94:20 (content_browsertests+0x0000024718a6)
    #57 content::MemoryTracingTest::SetUp() content/browser/tracing/memory_tracing_browsertest.cc:102:25 (content_browsertests+0x00000093515e)
    #58 HandleExceptionsInMethodIfSupported<testing::Test, void> testing/gtest/src/gtest.cc:2458:12 (content_browsertests+0x00000268ec6d)
    #59 testing::Test::Run() testing/gtest/src/gtest.cc:2470 (content_browsertests+0x00000268ec6d)
    #60 testing::TestInfo::Run() testing/gtest/src/gtest.cc:2656:11 (content_browsertests+0x00000268fdfd)
    #61 testing::TestCase::Run() testing/gtest/src/gtest.cc:2774:28 (content_browsertests+0x0000026906d6)
    #62 testing::internal::UnitTestImpl::RunAllTests() testing/gtest/src/gtest.cc:4647:43 (content_browsertests+0x000002699bb6)
    #63 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> testing/gtest/src/gtest.cc:2458:12 (content_browsertests+0x000002699559)
    #64 testing::UnitTest::Run() testing/gtest/src/gtest.cc:4255 (content_browsertests+0x000002699559)
    #65 RUN_ALL_TESTS testing/gtest/include/gtest/gtest.h:2237:46 (content_browsertests+0x0000024a4599)
    #66 base::TestSuite::Run() base/test/test_suite.cc:271 (content_browsertests+0x0000024a4599)
    #67 content::ContentTestLauncherDelegate::RunTestSuite(int, char**) content/test/content_test_launcher.cc:105:48 (content_browsertests+0x000002476f7b)
    #68 content::LaunchTests(content::TestLauncherDelegate*, int, int, char**) content/public/test/test_launcher.cc:520:31 (content_browsertests+0x000002491994)
    #69 main content/test/content_test_launcher.cc:131:10 (content_browsertests+0x000002476f02)

  Mutex M726622464058090128 is already destroyed.
...
 

Comment 1 by glider@chromium.org, Nov 22 2016

Owner: a...@chromium.org
Avi, may I ask you to take a look?

Comment 2 by a...@chromium.org, Nov 22 2016

Owner: ccameron@chromium.org
I don't know graphics.

Tossing to ccameron who is a graphics guru. If he doesn't know he surely will know who can take this.

Comment 3 by vmi...@chromium.org, Nov 22 2016

Cc: jbau...@chromium.org ccameron@chromium.org
Owner: sunn...@chromium.org
This looks like sunnyps@ area.
Mergedinto: 638862
Status: Duplicate (was: Assigned)

Sign in to add a comment